{"id":248,"date":"2026-06-11T13:02:33","date_gmt":"2026-06-11T05:02:33","guid":{"rendered":"https:\/\/ph.listeningo.cn\/index.php\/2026\/06\/11\/2026-06-10\/"},"modified":"2026-06-11T13:02:33","modified_gmt":"2026-06-11T05:02:33","slug":"2026-06-10","status":"publish","type":"post","link":"https:\/\/ph.listeningo.cn\/index.php\/2026\/06\/11\/2026-06-10\/","title":{"rendered":"PH\u70ed\u699c | 2026-06-10"},"content":{"rendered":"<p><!DOCTYPE html><br \/>\n<html lang=\"zh-CN\"><br \/>\n<head><br \/>\n    <meta charset=\"UTF-8\"><br \/>\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"><br \/>\n    <title>Product Hunt \u6bcf\u65e5\u70ed\u699c 2026-06-10<\/title><\/p>\n<style>\n        \/* --- \u5168\u5c40\u91cd\u7f6e\u4e0e\u5b57\u4f53 --- *\/\n        :root {\n            --ph-orange: #FF6154;\n            --text-main: #21293C;\n            --text-secondary: #4B587C;\n            --bg-ai: #F7F7F9;\n            --border-color: #E6E6E6;\n        }<\/p>\n<p>        body {\n            font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n            color: var(--text-main);\n            background-color: #ffffff;\n            line-height: 1.6;\n            margin: 0;\n            padding: 20px;\n        }<\/p>\n<p>        .container {\n            max-width: 800px;\n            margin: 0 auto;\n        }<\/p>\n<p>        \/* --- \u5361\u7247\u6837\u5f0f --- *\/\n        .app-card {\n            border-bottom: 1px solid var(--border-color);\n            padding-bottom: 40px;\n            margin-bottom: 40px;\n        }<\/p>\n<p>        \/* --- 1. \u5934\u90e8\u533a\u57df --- *\/\n        .app-header {\n            display: flex;\n            align-items: flex-start;\n            gap: 16px;\n            margin-bottom: 20px;\n        }<\/p>\n<p>        .rank {\n            font-size: 24px;\n            font-weight: 300;\n            color: #999;\n            min-width: 30px;\n            padding-top: 4px;\n        }<\/p>\n<p>        .title-group {\n            flex: 1;\n        }<\/p>\n<p>        .app-title {\n            font-size: 24px;\n            font-weight: 800;\n            margin: 0 0 4px 0;\n            color: var(--text-main);\n            text-decoration: none;\n            display: inline-block;\n        }<\/p>\n<p>        .app-title:hover {\n            color: var(--ph-orange);\n            text-decoration: underline;\n        }<\/p>\n<p>        .vote-btn {\n            display: flex;\n            flex-direction: column;\n            align-items: center;\n            justify-content: center;\n            border: 1px solid var(--border-color);\n            border-radius: 8px;\n            padding: 8px 12px;\n            background: #fff;\n            min-width: 60px;\n            box-shadow: 0 1px 2px rgba(0,0,0,0.05);\n        }<\/p>\n<p>        .vote-arrow {\n            color: var(--ph-orange);\n            font-size: 14px;\n            margin-bottom: -2px;\n        }<\/p>\n<p>        .vote-count {\n            font-weight: 600;\n            font-size: 14px;\n        }<\/p>\n<p>        \/* --- 2. \u5347\u7ea7\u7248\u5a92\u4f53\u753b\u5eca (\u5173\u952e\u4fee\u6539) --- *\/\n        .media-gallery {\n            display: flex;\n            gap: 16px;\n            overflow-x: auto; \/* \u5141\u8bb8\u6a2a\u5411\u6eda\u52a8 *\/\n            padding-bottom: 16px; \/* \u7559\u51fa\u6eda\u52a8\u7a7a\u95f4 *\/\n            scroll-snap-type: x mandatory; \/* \u6eda\u52a8\u5438\u9644\u6548\u679c *\/\n            -webkit-overflow-scrolling: touch; \/* iOS \u5e73\u6ed1\u6eda\u52a8 *\/\n            margin-bottom: 20px;<\/p>\n<p>            \/* \u9690\u85cf\u9ed8\u8ba4\u6eda\u52a8\u6761\u4f46\u4fdd\u7559\u529f\u80fd (Firefox) *\/\n            scrollbar-width: thin;\n            scrollbar-color: #ddd transparent;\n        }<\/p>\n<p>        \/* Webkit \u6eda\u52a8\u6761\u6837\u5f0f\u4f18\u5316 *\/\n        .media-gallery::-webkit-scrollbar {\n            height: 6px;\n        }\n        .media-gallery::-webkit-scrollbar-track {\n            background: transparent;\n        }\n        .media-gallery::-webkit-scrollbar-thumb {\n            background-color: #eee;\n            border-radius: 10px;\n        }<\/p>\n<p>        .media-item-wrapper {\n            flex: 0 0 auto; \/* \u9632\u6b62\u88ab\u538b\u7f29 *\/\n            width: 80%;     \/* \u79fb\u52a8\u7aef\u9ed8\u8ba4\u9732\u51fa\u4e00\u70b9\u4e0b\u4e00\u5f20\uff0c\u63d0\u793a\u53ef\u6ed1\u52a8 *\/\n            max-width: 500px; \/* \u684c\u9762\u7aef\u6700\u5927\u5bbd\u5ea6 *\/\n            aspect-ratio: 16\/9; \/* \u7edf\u4e00\u6bd4\u4f8b *\/<\/p>\n<p>            position: relative;\n            border-radius: 12px;\n            overflow: hidden;\n            border: 1px solid rgba(0,0,0,0.08);\n            background-color: #f5f5f5;\n            scroll-snap-align: center; \/* \u6eda\u52a8\u505c\u6b62\u65f6\u5c45\u4e2d *\/\n        }<\/p>\n<p>        .media-content {\n            width: 100%;\n            height: 100%;\n            object-fit: cover; \/* \u586b\u5145\u5bb9\u5668 *\/\n            display: block;\n            cursor: pointer;\n        }<\/p>\n<p>        \/* \u89c6\u9891\u6807\u7b7e\u7279\u6b8a\u5904\u7406 *\/\n        video.media-content {\n            background-color: #000;\n            cursor: pointer;\n        }<\/p>\n<p>        \/* \u5982\u679c\u53ea\u67091\u4e2a\u5a92\u4f53\uff0c\u4e0d\u8981\u6eda\u52a8\uff0c\u4e14\u5bbd\u5ea6\u81ea\u9002\u5e94 *\/\n        .media-gallery.single-item .media-item-wrapper {\n            width: 100%;\n            max-width: 100%;\n        }<\/p>\n<p>        \/* --- 3. \u63cf\u8ff0\u4e0e\u6807\u7b7e --- *\/\n        .one-liner {\n            font-size: 18px;\n            color: var(--text-secondary);\n            margin-bottom: 12px;\n            font-weight: 500;\n        }<\/p>\n<p>        .tags-container {\n            display: flex;\n            flex-wrap: wrap;\n            gap: 8px;\n            margin-bottom: 24px;\n        }<\/p>\n<p>        .tag {\n            font-size: 12px;\n            color: var(--text-secondary);\n            background-color: #F2F2F2;\n            padding: 4px 10px;\n            border-radius: 20px;\n            font-weight: 600;\n            text-transform: uppercase;\n        }<\/p>\n<p>        \/* --- 4. AI \u6458\u8981\u533a --- *\/\n        .ai-section {\n            background-color: var(--bg-ai);\n            border-radius: 12px;\n            padding: 20px;\n            margin-bottom: 20px;\n            border-left: 4px solid var(--ph-orange);\n        }<\/p>\n<p>        .ai-title {\n            font-size: 14px;\n            font-weight: 700;\n            color: var(--text-main);\n            margin: 0 0 12px 0;\n            display: flex;\n            align-items: center;\n            gap: 6px;\n        }<\/p>\n<p>        .ai-content {\n            font-size: 15px;\n            color: #333;\n            margin-bottom: 0;\n            line-height: 1.7;\n        }<\/p>\n<p>        \/* --- 5. \u8bc4\u8bba\u533a --- *\/\n        .reviews-section {\n            margin-top: 10px;\n        }<\/p>\n<p>        .review-item {\n            display: flex;\n            gap: 10px;\n            margin-bottom: 12px;\n            font-size: 14px;\n        }<\/p>\n<p>        .review-avatar {\n            font-size: 18px;\n            margin-top: 2px;\n            min-width: 24px;\n        }<\/p>\n<p>        .review-bubble {\n            background: #fff;\n            border: 1px solid var(--border-color);\n            padding: 8px 12px;\n            border-radius: 0 12px 12px 12px;\n            color: var(--text-secondary);\n            line-height: 1.5;\n        }<\/p>\n<p>        .review-author {\n            font-weight: 700;\n            color: var(--text-main);\n            margin-right: 4px;\n            font-style: normal;\n        }<\/p>\n<p>        .comments-section {\n            margin-top: 30px;\n            border-top: 1px solid var(--border-color);\n            padding-top: 20px;\n        }<\/p>\n<p>        .comments-toggle {\n            background-color: #f8f9fa;\n            border: 1px solid var(--border-color);\n            border-radius: 8px;\n            padding: 12px 20px;\n            cursor: pointer;\n            display: flex;\n            justify-content: space-between;\n            align-items: center;\n            width: 100%;\n            font-size: 14px;\n            font-weight: 600;\n            color: var(--text-main);\n            transition: all 0.3s ease;\n        }<\/p>\n<p>        .comments-toggle:hover {\n            background-color: #e9ecef;\n        }<\/p>\n<p>        .comments-toggle .toggle-arrow {\n            font-size: 18px;\n            transition: transform 0.3s ease;\n        }<\/p>\n<p>        .comments-toggle.open .toggle-arrow {\n            transform: rotate(180deg);\n        }<\/p>\n<p>        .comments-container {\n            max-height: 0;\n            overflow: hidden;\n            transition: max-height 0.5s ease;\n            margin-top: 15px;\n        }<\/p>\n<p>        .comments-container.open {\n            max-height: 800px;\n            overflow: auto;\n        }<\/p>\n<p>        .comment-item {\n            background-color: #fff;\n            border: 1px solid var(--border-color);\n            border-radius: 8px;\n            padding: 16px;\n            margin-bottom: 12px;\n            font-size: 14px;\n        }<\/p>\n<p>        .comment-header {\n            display: flex;\n            justify-content: space-between;\n            align-items: flex-start;\n            margin-bottom: 8px;\n        }<\/p>\n<p>        .comment-author {\n            font-weight: 600;\n            color: var(--text-main);\n            margin-right: 8px;\n        }<\/p>\n<p>        .comment-content {\n            color: var(--text-secondary);\n            line-height: 1.5;\n            margin-bottom: 10px;\n            word-break: break-word;\n            word-wrap: break-word;\n            overflow-wrap: anywhere;\n            white-space: normal;\n        }<\/p>\n<p>        .comment-content p {\n            margin: 0;\n            word-break: break-word;\n            word-wrap: break-word;\n            overflow-wrap: anywhere;\n            white-space: normal;\n        }<\/p>\n<p>        \/* \u4f18\u5316\u8868\u60c5\u7b26\u53f7\u663e\u793a *\/\n       .emoji {\n            display: inline;\n            max-width: 15px;\n            overflow-wrap: normal;\n        }<\/p>\n<p>        .comment-actions {\n            display: flex;\n            align-items: center;\n            gap: 16px;\n            font-size: 12px;\n            color: var(--text-secondary);\n        }<\/p>\n<p>        .comment-vote {\n            display: flex;\n            align-items: center;\n            gap: 4px;\n            cursor: pointer;\n        }<\/p>\n<p>        .comment-replies {\n            margin-top: 12px;\n            margin-left: 20px;\n            padding-left: 12px;\n            border-left: 2px solid var(--border-color);\n        }<\/p>\n<p>        .reply-item {\n            background-color: #f8f9fa;\n            border: 1px solid var(--border-color);\n            border-radius: 6px;\n            padding: 12px;\n            margin-bottom: 8px;\n            font-size: 13px;\n        }<\/p>\n<p>        .reply-content {\n            color: var(--text-secondary);\n            line-height: 1.4;\n            margin-bottom: 6px;\n        }<\/p>\n<p>        \/* --- \u54cd\u5e94\u5f0f\u5fae\u8c03 --- *\/\n        @media (min-width: 600px) {\n            .media-item-wrapper {\n                width: 60%; \/* \u684c\u9762\u7aef\u7a0d\u5fae\u7a84\u4e00\u70b9\uff0c\u5c55\u793a\u66f4\u591a\u5f20 *\/\n                scroll-snap-align: start; \/* \u684c\u9762\u7aef\u9760\u5de6\u5bf9\u9f50 *\/\n            }\n        }<\/p>\n<p>        \/* \u79fb\u52a8\u8bbe\u5907\u54cd\u5e94\u5f0f\u4f18\u5316 *\/\n        @media (max-width: 599px) {\n            \/* \u6a21\u6001\u6846\u4f18\u5316 *\/\n            .modal-content {\n                max-width: 95%;\n                max-height: 85vh;\n                margin: 10vh auto;\n            }<\/p>\n<p>            .close {\n                top: 10px;\n                right: 20px;\n                font-size: 30px;\n                \/* \u589e\u5927\u70b9\u51fb\u533a\u57df *\/\n                padding: 15px;\n            }<\/p>\n<p>            \/* \u89c6\u9891\u64ad\u653e\u56fe\u6807\u4f18\u5316 *\/\n            .play-icon {\n                width: 60px;\n                height: 60px;\n                font-size: 18px;\n            }<\/p>\n<p>            \/* \u786e\u4fdd\u5a92\u4f53\u5185\u5bb9\u5728\u5c0f\u5c4f\u5e55\u4e0a\u6b63\u786e\u663e\u793a *\/\n            .media-content {\n                object-fit: cover;\n            }\n        }<\/p>\n<p>        \/* --- \u56fe\u7247\u653e\u5927\u6a21\u6001\u6846\u6837\u5f0f --- *\/\n        .modal {\n            display: none;\n            position: fixed;\n            z-index: 1000;\n            left: 0;\n            top: 0;\n            width: 100%;\n            height: 100%;\n            background-color: rgba(0, 0, 0, 0.9);\n            overflow: auto;\n            transition: opacity 0.3s ease;\n        }<\/p>\n<p>        .modal-content {\n            display: block;\n            max-width: 90%;\n            max-height: 90vh;\n            margin: 5vh auto;\n            object-fit: contain;\n            animation: zoom 0.3s;\n        }<\/p>\n<p>        @keyframes zoom {\n            from {transform: scale(0.8); opacity: 0;}\n            to {transform: scale(1); opacity: 1;}\n        }<\/p>\n<p>        .close {\n            position: absolute;\n            top: 20px;\n            right: 35px;\n            color: #fff;\n            font-size: 40px;\n            font-weight: bold;\n            transition: 0.3s;\n            cursor: pointer;\n            \/* \u6dfb\u52a0\u89e6\u63a7\u4f18\u5316 *\/\n            padding: 10px;\n            line-height: 1;\n            user-select: none;\n            -webkit-user-select: none;\n        }<\/p>\n<p>        .close:hover,\n        .close:focus {\n            color: #bbb;\n            text-decoration: none;\n        }<\/p>\n<p>        \/* \u89c6\u9891\u70b9\u51fb\u63d0\u793a\u6837\u5f0f *\/\n        .video-overlay {\n            position: absolute;\n            top: 0;\n            left: 0;\n            width: 100%;\n            height: 100%;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            background-color: rgba(0, 0, 0, 0.2);\n            opacity: 0;\n            transition: opacity 0.3s ease;\n            \/* \u89e6\u63a7\u4f18\u5316 *\/\n            touch-action: manipulation;\n            cursor: pointer;\n        }<\/p>\n<p>        .media-item-wrapper:hover .video-overlay {\n            opacity: 1;\n        }<\/p>\n<p>        \/* \u4e3a\u89e6\u6478\u8bbe\u5907\u6dfb\u52a0\u89e6\u6478\u6548\u679c *\/\n        .media-item-wrapper:active .video-overlay {\n            opacity: 0.8;\n        }<\/p>\n<p>        .play-icon {\n            width: 80px;\n            height: 80px;\n            background-color: rgba(255, 255, 255, 0.9);\n            border-radius: 50%;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            color: var(--ph-orange);\n            font-size: 24px;\n            font-weight: bold;\n            \/* \u89e6\u63a7\u4f18\u5316 *\/\n            user-select: none;\n            -webkit-user-select: none;\n        }<\/p>\n<p>        \/* --- \u54cd\u5e94\u5f0f\u5fae\u8c03 --- *\/\n        @media (min-width: 600px) {\n            .media-item-wrapper {\n                width: 60%; \/* \u684c\u9762\u7aef\u7a0d\u5fae\u7a84\u4e00\u70b9\uff0c\u5c55\u793a\u66f4\u591a\u5f20 *\/\n                scroll-snap-align: start; \/* \u684c\u9762\u7aef\u9760\u5de6\u5bf9\u9f50 *\/\n            }\n        }<\/p>\n<p>        \/* \u79fb\u52a8\u8bbe\u5907\u54cd\u5e94\u5f0f\u4f18\u5316 *\/\n        @media (max-width: 599px) {\n            \/* \u6a21\u6001\u6846\u4f18\u5316 *\/\n            .modal-content {\n                max-width: 95%;\n                max-height: 85vh;\n                margin: 10vh auto;\n            }<\/p>\n<p>            .close {\n                top: 10px;\n                right: 20px;\n                font-size: 30px;\n                \/* \u589e\u5927\u70b9\u51fb\u533a\u57df *\/\n                padding: 15px;\n            }<\/p>\n<p>            \/* \u89c6\u9891\u64ad\u653e\u56fe\u6807\u4f18\u5316 *\/\n            .play-icon {\n                width: 60px;\n                height: 60px;\n                font-size: 18px;\n            }<\/p>\n<p>            \/* \u786e\u4fdd\u5a92\u4f53\u5185\u5bb9\u5728\u5c0f\u5c4f\u5e55\u4e0a\u6b63\u786e\u663e\u793a *\/\n            .media-content {\n                object-fit: cover;\n            }\n        }\n    <\/style>\n<p><\/head><br \/>\n<body><\/p>\n<div class=\"container\">\n<h1 style=\"text-align:center; margin-bottom:40px; font-weight:900;\">PH\u70ed\u699c | 2026-06-10<\/h1>\n<p>    <!-- \u5c55\u793aapp\u5361\u7247 --><\/p>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#1<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/FFFDHH6IKSRQWU\" class=\"app-title\">Publora<\/a><\/p>\n<div class=\"one-liner\">The publishing API for the agent era<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">514<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>Publora\u662f\u4e00\u4e2a\u9762\u5411AI\u4ee3\u7406\u65f6\u4ee3\u7684\u793e\u4ea4\u53d1\u5e03API\uff0c\u901a\u8fc7\u5355\u4e00\u63a5\u53e3\u5373\u53ef\u5c06\u5185\u5bb9\u5206\u53d1\u81f310\u4e2a\u793e\u4ea4\u5a92\u4f53\u5e73\u53f0\uff0c\u5e76\u652f\u6301\u4e92\u52a8\uff08\u8bc4\u8bba\u3001\u70b9\u8d5e\u7b49\uff09\u4e0e\u6570\u636e\u5206\u6790\uff0c\u89e3\u51b3\u4e86\u5f00\u53d1\u8005\u548c\u5185\u5bb9\u8fd0\u8425\u8005\u5728\u591a\u5e73\u53f0\u7ba1\u7406\u3001API\u96c6\u6210\u548c\u81ea\u52a8\u5316\u5de5\u4f5c\u6d41\u4e2d\u7684\u75db\u70b9\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/712e199b-0dbc-44f3-8668-f02d03d35df6.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/43d4e998-93d0-4322-9fa5-28e13a01fb8e.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/6dfdc5cd-05ee-499e-9d1b-0fb7c255a996.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/df2a622a-98d8-4113-b4a6-f2412a1e7bc7.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/e9ecf49e-62b3-4ddc-ae52-0f3b6297accb.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/02a28cf5-5bb1-4150-be0f-d70e7a062fb8.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/1434fd84-4239-46a1-99b2-c21deb0b9133.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <video class=\"media-content\" poster=\"https:\/\/ph-files.imgix.net\/6b55cfc0-3bb9-4758-81bb-5212af7c6dcb.jpeg?auto=format\" data-video-url=\"https:\/\/youtu.be\/WVYe7dogkY8\"><source src=\"https:\/\/youtu.be\/WVYe7dogkY8\" type=\"video\/mp4\"><\/video><\/p>\n<div class=\"video-overlay\">\n<div class=\"play-icon\">\u25b6<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">API<\/span><br \/>\n            <span class=\"tag\">Social Media<\/span><br \/>\n            <span class=\"tag\">Developer Tools<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">API<\/span><br \/>\n            <span class=\"tag\">\u793e\u4ea4\u53d1\u5e03<\/span><br \/>\n            <span class=\"tag\">AI\u4ee3\u7406<\/span><br \/>\n            <span class=\"tag\">MCP<\/span><br \/>\n            <span class=\"tag\">\u81ea\u52a8\u5316\u5de5\u4f5c\u6d41<\/span><br \/>\n            <span class=\"tag\">\u591a\u5e73\u53f0\u7ba1\u7406<\/span><br \/>\n            <span class=\"tag\">\u65e0\u4ee3\u7801\u96c6\u6210<\/span><br \/>\n            <span class=\"tag\">\u5f00\u53d1\u8005\u5de5\u5177<\/span><br \/>\n            <span class=\"tag\">\u5185\u5bb9\u8fd0\u8425<\/span><br \/>\n            <span class=\"tag\">\u4f01\u4e1a\u7ea7<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u666e\u904d\u8ba4\u53ef\u5176\u89e3\u51b3\u8de8\u5e73\u53f0\u53d1\u5e03\u7684\u75db\u70b9\uff0c\u5173\u6ce8\u6280\u672f\u7ec6\u8282\uff1a\u5982LinkedIn\u662f\u5426\u5408\u89c4\uff08\u56de\u590d\u79f0\u7528\u5b98\u65b9API\uff09\uff0c\u5982\u4f55\u5904\u7406\u4ee4\u724c\u5237\u65b0\u3001\u9650\u6d41\u548c\u5a92\u4f53\u4e0a\u4f20\uff08\u56de\u590d\u79f0\u5b8c\u5168\u7531\u5e73\u53f0\u5904\u7406\uff09\u3002\u8be2\u95ee\u662f\u5426\u6709\u8bd5\u7528\uff08\u56de\u590d\u6709\u514d\u8d39\u7248\uff09\u3001\u662f\u5426\u652f\u6301\u5ba1\u6279\u6d41\u7a0b\uff08\u56de\u590d\u652f\u6301\uff09\u3001\u80fd\u5426\u767d\u6807\u4f7f\u7528\uff08\u56de\u590d\u6709workspace\u6a21\u5f0f\uff09\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                Publora\u7684\u806a\u660e\u4e4b\u5904\u5728\u4e8e\uff0c\u5b83\u7ed5\u5f00\u4e86\u4f20\u7edf\u793e\u4ea4\u7ba1\u7406\u5de5\u5177\u201c\u4e3a\u4eba\u670d\u52a1\u201d\u7684\u8def\u5f84\u4f9d\u8d56\uff0c\u76f4\u63a5\u5207\u5165\u201c\u4e3aAI\u4ee3\u7406\u670d\u52a1\u201d\u7684\u84dd\u6d77\u3002\u5176\u6838\u5fc3\u4ef7\u503c\u5e76\u975e\u53c8\u4e00\u4e2a\u805a\u5408\u53d1\u5e03\u5668\uff0c\u800c\u662f\u5c06\u793e\u4ea4\u5a92\u4f53\u64cd\u4f5c\u6807\u51c6\u5316\u4e3a\u4e00\u5957API\u548cMCP\u534f\u8bae\u4e0b\u7684\u5de5\u5177\u96c6\u3002\u8fd9\u7cbe\u51c6\u51fb\u4e2d\u4e86\u4e24\u4e2a\u9700\u6c42\uff1a\u4e00\u662f\u5f00\u53d1\u8005\u538c\u5026\u4e3a\u6bcf\u4e2a\u5e73\u53f0\u7ef4\u62a4\u8106\u5f31\u7684OAuth\u548c\u9002\u914d\u5668\uff0c\u4e8c\u662f\u5185\u5bb9\u8fd0\u8425\u8bd5\u56fe\u7528AI\u4ee3\u7406\u6784\u5efa\u81ea\u52a8\u5316\u5de5\u4f5c\u6d41\u65f6\uff0c\u53d1\u73b0\u73b0\u6709\u5de5\u5177\u6839\u672c\u4e0d\u652f\u6301\u7f16\u7a0b\u5316\u4e92\u52a8\uff08\u5982\u8bc4\u8bba\u3001\u70b9\u8d5e\uff09\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u4f46\u5fc5\u987b\u6307\u51fa\uff0c\u4ea7\u54c1\u76ee\u524d\u4ecd\u9762\u4e34\u4e25\u5cfb\u6311\u6218\u3002\u7b2c\u4e00\uff0c\u4f9d\u8d56\u5341\u4e2a\u5e73\u53f0\u7684\u5b98\u65b9API\u610f\u5473\u7740\u201c\u4efb\u4eba\u5bb0\u5272\u201d\uff0cLinkedIn\u3001Meta\u7b49\u5bf9\u81ea\u52a8\u5316\u6709\u4e25\u683c\u9650\u5236\u7684\u5e73\u53f0\u968f\u65f6\u53ef\u80fd\u8c03\u6574\u7b56\u7565\uff0cPublora\u7684\u201c\u5b98\u65b9API\u201d\u62a4\u57ce\u6cb3\u5e76\u4e0d\u575a\u56fa\uff0c\u53ea\u662f\u89c4\u907f\u4e86\u6d4f\u89c8\u5668bot\u7684\u4f4e\u7ea7\u98ce\u9669\u3002\u7b2c\u4e8c\uff0c**\u201cAI\u4ee3\u7406\u65f6\u4ee3\u201d\u7684\u76c8\u5229\u6a21\u578b\u5c1a\u672a\u660e\u6717**\uff0c\u5f53\u524d\u9996\u6708$2.99\u7684\u4f4e\u4ef7\u66f4\u591a\u662f\u83b7\u5ba2\u7b56\u7565\uff0c\u4e00\u65e6\u89c4\u6a21\u5316\uff0cAPI\u8c03\u7528\u6210\u672c\u3001\u5e73\u53f0\u914d\u989d\u7ba1\u7406\u3001\u6570\u636e\u540c\u6b65\u7684\u8fb9\u9645\u6210\u672c\u5c06\u8fc5\u901f\u6500\u5347\u3002\u7b2c\u4e09\uff0cMCP\u670d\u52a1\u5668\u867d\u7136\u7406\u60f3\u5316\uff0c\u4f46\u4e0d\u540cLLM\u5bf9\u5de5\u5177\u7f16\u6392\u7684\u7406\u89e3\u529b\u53c2\u5dee\u4e0d\u9f50\uff0c\u7528\u6237\u53cd\u9988\u4e2dZod\u9a8c\u8bc1\u548c\u679a\u4e3e\u7ea6\u675f\u867d\u7136\u80fd\u9632\u6b62\u90e8\u5206\u5e7b\u89c9\uff0c\u5374\u65e0\u6cd5\u89e3\u51b3\u590d\u6742\u8de8\u5e73\u53f0\u903b\u8f91\uff08\u5982\u5b9a\u65f6\u53d1\u5e03\u3001\u5185\u5bb9\u683c\u5f0f\u88c1\u526a\uff09\u7684\u4ee3\u7406\u81ea\u4e3b\u51b3\u7b56\u95ee\u9898\uff0c\u6700\u7ec8\u53ef\u80fd\u6ca6\u4e3a\u201c\u66f4\u8d35\u7684IFTTT\u201d\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u7b80\u8a00\u4e4b\uff0cPublora\u5728\u6b63\u786e\u7684\u65f6\u95f4\u5207\u5165\u4e86\u6b63\u786e\u7684\u7ec6\u5206\u9886\u57df\uff1a\u5de5\u5177\u94fe\u57fa\u7840\u8bbe\u65bd\u3002\u5b83\u4e0d\u627f\u8bfa\u5185\u5bb9\u589e\u957f\uff0c\u53ea\u627f\u8bfa\u6280\u672f\u63a5\u5165\u3002\u4f46\u8fd9\u79cd\u5b9a\u4f4d\u4e5f\u610f\u5473\u7740\u5b83\u96be\u4ee5\u6210\u4e3a\u9ad8\u4ef7\u503c\u3001\u9ad8\u7c98\u6027\u7684SaaS\uff0c\u66f4\u50cf\u662f\u901a\u5f80\u5404\u5927\u5e73\u53f0\u7684\u201c\u7ba1\u9053\u5de5\u201d\u3002\u80fd\u5426\u5728\u72c2\u70ed\u7684AI\u4ee3\u7406\u6ce1\u6cab\u4e2d\u627e\u5230\u771f\u6b63\u7684\u4ed8\u8d39\u5f3a\u573a\u666f\u2014\u2014\u6bd4\u5982\u9700\u8981\u540c\u65f6\u7ba1\u7406\u6570\u767e\u4e2a\u793e\u4ea4\u8d26\u6237\u7684\u7535\u5546\u6216\u5a92\u4f53\u673a\u6784\u2014\u2014\u5c06\u51b3\u5b9a\u5176\u80fd\u5426\u4ece\u201c\u6709\u8da3\u7684API\u201d\u8715\u53d8\u4e3a\u201c\u5fc5\u8981\u7684\u57fa\u7840\u8bbe\u65bd\u201d\u3002\u5426\u5219\uff0c\u5b83\u6c38\u8fdc\u662f\u5f00\u53d1\u8005\u5728GitHub\u4e0a\u5c1d\u8bd5\u540e\u4fbf\u675f\u4e4b\u9ad8\u9601\u7684\u53c8\u4e00\u4e2a\u5de5\u5177\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">Publora<\/span>\n                <\/div>\n<div class=\"comment-content\">Publora is a publishing API for 10 social platforms. One REST API call handles multi-network distribution \u2014 no SDKs, no OAuth wiring. The native MCP server with 18 tools gives AI agents like Claude and Cursor a full engagement loop: post, comment, react, pull analytics \u2014 across LinkedIn, X, Instagram, Threads, TikTok, YouTube, Facebook, Bluesky, Mastodon, and Telegram<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Hey Product Hunt! \ud83d\udc4b Jane here, CEO of Publora.<\/p>\n<p>Publora has been around for a while &#8211; you might have even seen us here before.<\/p>\n<p>We started as a social media scheduler for people. But this launch is different.<\/p>\n<p>So we evolved Publora into something that works both for humans and for agents.<\/p>\n<p>AI agents are everywhere now and the marketers, content managers, and creators we work with aren&#8217;t just writing posts in tools anymore &#8211; they&#8217;re building workflows where agents do the heavy lifting.<\/p>\n<p>Publora now works for humans and AI agents equally well:<\/p>\n<ol>\n<li>\n<p>One API call publishes to 10 platforms &#8211; your code, your agent, your choice<\/p>\n<\/li>\n<li>\n<p>MCP server lets agents post, schedule, and manage content in plain language<\/p>\n<\/li>\n<li>\n<p>Comments and replies are in the API too &#8211; not just publishing, full engagement<\/p>\n<\/li>\n<li>\n<p>Works inside the tools where you already operate &#8211; no tab-switching<\/p>\n<\/li>\n<\/ol>\n<p>Unlike most social tools built for clicking buttons, Publora is built for automation first. No browser bots. No workarounds. Official APIs only.<\/p>\n<p>Whether you&#8217;re a content manager building your first agent workflow, or a developer shipping a social automation &#8211; Publora fits in without friction.<\/p>\n<p>Pricing starts at $2.99\/account\/month. And as a thank you to the Product Hunt community \u2014 use code <strong>PH20THANKU<\/strong> for 20% off your first payment.<\/p>\n<\/p>\n<p>We&#8217;re happy to answer your questions &#8211; drop them below!<\/p>\n<p><\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>27<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@eugenia_ivanova3\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@eugenia_ivanova3<\/a>&nbsp;Great project! Good luck with the launch, and thanks for the promo code.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>9<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>This is a great project solving a real problem and offloading all of the different platforms to a single MCP is much more useful for agentic workflows. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@eugenia_ivanova3\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@eugenia_ivanova3<\/a>&nbsp;most social tools still feel built for humans clicking buttons, while the real shift is toward workflows, agents, and APIs. making publishing + comments + replies accessible in one automation layer is genuinely useful. good luck with the launch \ud83d\ude80<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>building saas products solo, so i know how painful cross-platform posting gets. this solves a real headache.<\/p>\n<p>rooting for you! <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>8<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@heyalizaid\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@heyalizaid<\/a>&nbsp;Thank you so much! <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Hey everyone! Today&#8217;s a big day for our small team. We&#8217;ve been building Publora for a while now, and launching here feels like a real milestone. Hope you love it as much as we do \u2014 and if something&#8217;s missing, tell us. We read everything. \ud83d\ude4f<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>7<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@sergebulaev\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@sergebulaev<\/a>&nbsp;As part of the team, I can say \u2014 we really do read everything. Your feedback shapes what we build next. Thanks for being here on day one! \u2764\ufe0f<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@sergebulaev\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@sergebulaev<\/a>&nbsp; good luck with your launch, the feature set looks impressive! how do you guys handle linkedin messaging &#8211; any concerns regarding their ToS? <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>5<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This year, I started posting on my LinkedIn page every day, and it\u2019s not always easy. Not to mention managing multiple pages across different platforms. Your product clearly makes this process easier. I\u2019ll check it out. Thanks, and good luck with today\u2019s launch.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>7<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@maria_anosova\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@maria_anosova<\/a>&nbsp;Thank you so much! Daily posting takes real discipline \u2014 we built Publora exactly for people like you who are serious about showing up consistently. Hope it makes your life a little easier. Good luck with your LinkedIn journey! \ud83d\ude80<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>3<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congratulations on your launch on ProductHunt. Good luck today\ud83c\udf40<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>6<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@nikogermish\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@nikogermish<\/a>&nbsp;Thank you so much!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">Cool, congrats. Doesn\u2019t LinkedIn detect your tool? It\u2019s usually very suspicious of any automation tool<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>5<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@nastassia_k\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@nastassia_k<\/a>&nbsp;We use official LinkedIn APIs only \u2014 no browser bots, no session hacks. That&#8217;s exactly why we built it this way. Official integrations don&#8217;t trigger suspicion. \ud83d\ude0a<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>4<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Most &#8220;publish anywhere via API&#8221; tools work fine until you hit rate limits, token refresh edge cases, or a platform that quietly changed its media upload flow. Curious whether Publora owns the per-platform adapter layer or expects developers to handle that messiness themselves. <\/p>\n<p>I know how complicated it could be to implement external APIs<\/p>\n<\/p>\n<p>Congrats for the launch<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>5<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@fberrez1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@fberrez1<\/a>&nbsp;Exactly. Our goal is to remove that headache completely.<\/p>\n<\/p>\n<p>Developers and agents just create the content and send it to Publora. Everything else \u2014 platform-specific APIs, token refreshes, rate limits, media upload quirks, and API changes \u2014 is handled on our side.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>7<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@fberrez1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@fberrez1<\/a>&nbsp;Thank you for the kind words and great question! Ilya covered it perfectly. \ud83d\ude0a<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Gonna try this for our team, do you guys have a trial? <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>4<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@alexander_anastasin\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@alexander_anastasin<\/a>&nbsp;Yes! We have a free Starter plan \u2014 15 posts\/month, no credit card required. Just sign up and go \ud83d\ude0a<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">Go Go Go!<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>4<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@dmitry_zakharov_ai\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@dmitry_zakharov_ai<\/a>&nbsp;Thank you! <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@dmitry_zakharov_ai\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@dmitry_zakharov_ai<\/a>&nbsp;\ud83d\ude01\ud83d\ude01\ud83d\ude01<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the launch! This looks like a very useful layer for AI-native content workflows \u2014 especially if teams want agents to handle distribution without building 10 separate platform integrations.<\/p>\n<p>Curious how you handle the approval flow: can an agent prepare posts and replies while a human still confirms before publishing?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>4<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@muravyov\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@muravyov<\/a>&nbsp;Thanks for the question! Yes, that&#8217;s possible \u2014 give it a try! \ud83d\ude0a<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The self-setup flow stood out to me &#8211; instead of pasting a config, you just give the agent the docs and let it configure itself. How reliable is that across different agents? Claude Code probably handles it cleanly, but I&#8217;m curious how it holds up with less capable ones. <\/p>\n<\/p>\n<p>Congrats on the launch!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@jared_salois\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@jared_salois<\/a>&nbsp;Claude Code handles it really cleanly. For other agents it mostly comes down to how well they deal with tool schemas \u2014 but in practice it holds up well, and we&#8217;ve built a couple of fallbacks so capability isn&#8217;t a blocker:<\/p>\n<\/p>\n<p>\u2022 Ready-made skills \u2014 you can just install one instead of self-configuring, e.g. our Threads skill: <a href=\"https:\/\/www.skills.sh\/publora\/skills\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/www.skills.sh\/publora\/skills<\/a><\/p>\n<p>\u2022 Or go straight to the API \u2014 feed any agent our API docs and it&#8217;ll wire itself up reliably. We put a lot of care into keeping the docs clean and clear exactly for this. <a href=\"https:\/\/docs.publora.com\/getting-started\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/docs.publora.com\/getting-started<\/a><\/p>\n<\/p>\n<p>And we&#8217;re continuously improving the docs to make the self-set<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Exposing 18 distinct tools across 10 networks inside a single MCP server is incredibly powerful. How do you optimize the tool schemas to prevent LLMs (like Claude in Cursor or Claude Code) from getting &#8216;tool fatigue&#8217; or hallucinating arguments when trying to orchestrate complex, multi-platform actions like cross-posting to both X and Bluesky simultaneously? <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@nurlyzhann\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@nurlyzhann<\/a>&nbsp;<\/p>\n<\/p>\n<p>The short version: we push all the constraints down to the schema layer, not the prompt \u2014 so the model can&#8217;t really get this wrong.<\/p>\n<\/p>\n<p>A few specifics:<\/p>\n<p>\u2022 Every closed value set is a z.enum, so a hallucinated argument dies in Zod validation before it ever reaches the API \u2014 the LLM gets an immediate, typed error to correct from instead of a silent bad call.<\/p>\n<p>\u2022 Opaque platform IDs are only accepted verbatim from a paired list_connections discovery call \u2014 the field description literally says &#8220;do NOT invent or guess IDs&#8221;, so there&#8217;s nothing for the model to make up.<\/p>\n<p>\u2022 Cross-posting to X + Bluesky (or all of them) is a single create_post with a platforms[] array. The per-network fan-out happens server-side, so the model never has to reason about platform differences at all \u2014 it just says &#8220;post this, to these&#8221;.<\/p>\n<\/p>\n<p>That combo is what keeps it from turning into 18-tools-worth of cognitive load: the agent reasons about intent, the schema + server handle correctness. Happy to nerd out more if you&#8217;re building in this space!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>3<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on shipping!&nbsp;<\/p>\n<p>Is it possible to use Publora under the hood of my own product, white-label style? So my clients hook up their own channels, but it all sits under my account.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@timur_sekamov\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@timur_sekamov<\/a>&nbsp;Thank you!<br \/>Absolutely \u2014 that&#8217;s exactly the workspace flow <\/p>\n<p>1. You (as the owner) purchase the channels you need.<\/p>\n<p>2. Via the API you create a user and get a unique URL for channel connection.<\/p>\n<p>3. Your customer follows that URL to complete OAuth and connect their channel \u2014 generating a unique channel ID.<\/p>\n<p>4. Your agent then uses that channel ID + your owner API key to post.<\/p>\n<p>All connected channels draw from your main channel quota, so your customers don&#8217;t need their own subscriptions. <\/p>\n<p>Guide: <a href=\"https:\/\/docs.publora.com\/guides\/workspace\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/docs.publora.com\/guides\/workspace<\/a><\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the launch team! Super fair pricing. Will give it a try \ud83d\ude80<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@danshipit\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@danshipit<\/a>&nbsp;Thank you! Would love to hear your feedback once you try it! \ud83d\ude0a<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>not gonna lie, every new social integration usually means another thing to maintain. The idea of handling everything through one layer is pretty appealing<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@furkan_kara1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@furkan_kara1<\/a>&nbsp;One integration, posting to multiple platforms \u2014 give it a try! \ud83d\ude0a<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Do I need X api credits to post in the Pro plan or is it included?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@aymnart\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@aymnart<\/a>&nbsp;Yes, it&#8217;s included! \ud83d\ude0a<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@aymnart\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@aymnart<\/a>&nbsp;That\u2019s exactly the point! You don\u2019t need an X developer account or API credits. Just connect your account once via OAuth in Publora, and we handle all the API complexity on our side.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>3<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Cool stuff. I actually built something like this for myself, but burned out trying to get official Twitter\/X API access \ud83d\ude05 that approval process is brutal<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@shirokolobov\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@shirokolobov<\/a>&nbsp;Ha &#8211; you just described why we exist \ud83d\ude42 This isn&#8217;t a &#8220;vibe-code it in a weekend&#8221; project. The hard part is the huge bureaucracy of the digital giants, where you sink tons of time, effort and money into official channel approvals. We&#8217;ve done that legwork across every platform so you don&#8217;t have to.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>3<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The MCP angle is what makes this genuinely interesting, most social APIs stop at &#8220;publish a post&#8221; but the full engagement loop (comment, react, mention) is what agents actually need to run a real presence. The $2.99\/account pricing removes the usual &#8220;is this worth wiring up&#8221; hesitation. One question: for Instagram specifically, does it support carousel posts and reels scheduling, or only single images\/text for now?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@keirodev\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@keirodev<\/a>&nbsp;Both Instagram features are fully supported! \ud83d\ude0a<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Interesting concept, since this uses API, is the primary use case via scripts \/ agents ? like I need to create a scheduled job ? how often I need to refresh my oauth credentials ? do you also support analytics w.r.t engagement on each platform ?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@vinitvr\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@vinitvr<\/a>&nbsp;  Good questions!<\/p>\n<\/p>\n<p>  &#8211; Use case: both. Agents call it via MCP; scripts hit the REST API directly. There&#8217;s also a dashboard if you&#8217;d rather not write code.<\/p>\n<\/p>\n<p>  &#8211; Scheduled job: no cron on your side \u2014 scheduling is built in (queue posts ahead of time), or fire on-demand from your agent\/script.<\/p>\n<\/p>\n<p>  &#8211; OAuth: you don&#8217;t refresh anything. Connect an account once and we rotate\/refresh the tokens in the background \u2014 you only re-auth if you revoke access.<\/p>\n<\/p>\n<p>  &#8211; Analytics: yes \u2014 per-post engagement (likes\/comments\/views) LinkedIn only.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>3<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@vinitvr\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@vinitvr<\/a>&nbsp;Serge covered it perfectly! And if you ever get stuck setting things up \u2014 we&#8217;re here. \ud83d\ude0a<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">TikTok takes into account the IP used for publication. Is it possible on Publora to choose the geo of your proxy\/ip?<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@michael_vavilov\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@michael_vavilov<\/a>&nbsp;At the moment, we don\u2019t expose proxy\/IP geo selection to users. Our infrastructure currently runs from the US (Virginia).<\/p>\n<\/p>\n<p>That said, it\u2019s a great point. We know that for TikTok, not only the country but often even the publication location can affect distribution. We\u2019ve also seen creators deliberately optimize for local presence.<\/p>\n<\/p>\n<p>We\u2019re definitely thinking about adding support for publishing through residential proxies and allowing users to choose the target country (or even city) in the future.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>3<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">The MCP server angle is the part I\u2019d actually use \u2014 not for scheduling, but for closing the loop between building and distributing. Right now there\u2019s too much friction between \u2018I shipped something\u2019 and \u2018the right people know about it.\u2019 An agent that can post, engage, and pull analytics without tab-switching changes that workflow significantly. Building Composa solo, content distribution is the bottleneck I keep hitting. Congrats on #2!<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@dani_mashael\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@dani_mashael<\/a>&nbsp;Thank you for the feedback! Hope you enjoy Publora \ud83d\ude0a<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@dani_mashael\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@dani_mashael<\/a>&nbsp;Thanks, our goal is #1! \ud83d\ude00<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Oh yeah, this is a way to go. Not so clear from the short description how credentials are handled.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@ilya_kolesnikov1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@ilya_kolesnikov1<\/a>&nbsp;Good point! You connect your account once via OAuth \u2014 we handle token storage and refresh automatically on our side. You only re-auth if you revoke access yourself. \ud83d\ude0a<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Hey! Congrats! I\u2019d like to try! Looks nice. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>Thanks <a href=\"https:\/\/www.producthunt.com\/@caneraras\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@caneraras<\/a>! It is! <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This is what I&#8217;ve looked for a long time. For me, as a solo-founder, this platform saves a lot of time <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@scream4ik\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@scream4ik<\/a>&nbsp;Thank you! So glad to have you here! \ud83d\ude0a<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Is it able to learn on my taste and style of doing posts? if yes my Fable model will become CMO of my company with ur product, congrats w\/ the launch anyways!!!!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@igor_martinyuk\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@igor_martinyuk<\/a>&nbsp;Thanks! \ud83d\ude4f Honest answer \u2014 no, Publora doesn&#8217;t learn your style. It&#8217;s a purely technical tool: it publishes and schedules the content you pass to it across your social networks. The taste and style stay on your model&#8217;s side \u2014 Publora is just the layer that ships what your agent creates.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@igor_martinyuk\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@igor_martinyuk<\/a>&nbsp;BTW if the &#8220;writing in my style&#8221; part is what you&#8217;re after we have another product, <a href=\"http:\/\/Co.Actor\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Co.Actor<\/a>, that does exactly that. It&#8217;s built on top of Publora under the hood, but <a href=\"http:\/\/Co.Actor\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Co.Actor<\/a> is the layer that actually learns your voice and drafts posts in your style, then Publora ships them. Kind of the perfect combo for your &#8220;AI CMO&#8221; idea \ud83d\ude04<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This is cool, real need to get communication in sync with work. Do you have indexing as well ?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@thinkharshh\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@thinkharshh<\/a>&nbsp;Ah, if you mean scraping\/indexing social networks \u2014 then no, that&#8217;s not something we do \ud83d\ude42 <\/p>\n<p>Publora is focused purely on the content side: creating, publishing and handling your posts (and replies\/comments) through the official APIs. We&#8217;re not in the data-harvesting business. If your use case is more on the &#8220;post &amp; engage from my agent&#8221; side, that&#8217;s exactly our wheelhouse \u2014 happy to dig in!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>3<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Quick questions:<\/p>\n<ul>\n<li>\n<p>Do you guys also provide metrics and insights on the posts?<\/p>\n<\/li>\n<li>\n<p>Currently I use Buffer for the same thing, how are you guys different from it?<\/p>\n<\/li>\n<\/ul>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@soni_karan\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@soni_karan<\/a>&nbsp;\ud83d\ude4c<\/p>\n<\/p>\n<p>1) Metrics &amp; insights \u2014 yes. You get analytics on the posts you publish through Publora: LinkedIn is the deepest right now (impressions, unique reach, reactions, comments, reshares \u2014 per-post or aggregated), and the other platforms are a bit lighter for now, with more on the way. Since it&#8217;s all through the MCP, you can just ask your agent &#8220;how did my last post do?&#8221; \u2192 <a href=\"https:\/\/docs.publora.com\/guides\/linkedin-analytics\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/docs.publora.com\/guides\/linkedin-analytics<\/a><\/p>\n<\/p>\n<p>2) vs Buffer \u2014 honestly, it comes down to who we are: we&#8217;re a small, fast, AI-first team (~8 people), so we move quickly, ship constantly, and build everything agent-native from the ground up rather than bolting AI on later. That speed is also why we&#8217;re one of the most affordable \/ <strong>best-value options out there<\/strong>. So you get an AI-first product that evolves fast, at a friendlier price \ud83d\ude80<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This would&#8217;ve saved me a lot of time a few months ago. Setting up posting workflows across diff platforms always felt more complicated than the actual content part. Which network ended up being the hardest to support consistently?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@gizem_ozturk\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@gizem_ozturk<\/a>&nbsp;Every network has its own quirks and requirements \u2014 but we figured them all out, and that&#8217;s what matters! \ud83d\ude0a<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Wiring OAuth for every single network is exactly the kind of work nobody should be doing in 2026. Congrats on the launch!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@boris_lifatov\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@boris_lifatov<\/a>&nbsp;Exactly our thinking! Thank you! \ud83d\ude0a<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Why did you copy the Postiz marketing website&#8217;s last 3 sections, and not all the sections?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@nevo_david\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@nevo_david<\/a>&nbsp;Good landing pages share a lot of DNA \ud83d\ude42 The product underneath doesn&#8217;t \u2014 Publora is API + MCP-first for agents. Thanks for checking it out, Nevo.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#2<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/AET65KN4Y36CK3\" class=\"app-title\">TypingMind<\/a><\/p>\n<div class=\"one-liner\">Pay per use, no subscription, 18 model providers supported<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">404<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>TypingMind \u662f\u4e00\u6b3e\u901a\u8fc7\u81ea\u5e26API\u5bc6\u94a5\u6309\u7528\u91cf\u4ed8\u8d39\u7684AI\u5de5\u4f5c\u53f0\uff0c\u805a\u540818\u5bb6\u6a21\u578b\u63d0\u4f9b\u5546\uff0c\u89e3\u51b3\u7528\u6237\u4e3a\u591a\u4e2aAI\u8ba2\u9605\u91cd\u590d\u4ed8\u8d39\u7684\u75db\u70b9\uff0c\u5e76\u63d0\u4f9b\u4e13\u4e1a\u7ea7\u804a\u5929\u589e\u5f3a\u529f\u80fd\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/816c019e-6d5a-44c2-ab67-ef208d2c2d66.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/8965f9a8-7073-40af-af2c-c4058f594ab1.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/c158c897-ae44-4f40-891b-702a1fc35419.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/560a09bd-7961-409c-8f8f-5a6651f22a32.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/9b1fc105-bfb0-46a1-b39f-476948a2aace.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/49b95c81-aef5-4889-9fb2-631f6f44696f.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <video class=\"media-content\" poster=\"https:\/\/ph-files.imgix.net\/c71e8313-8248-4a66-afa8-8e12c023e392.jpeg?auto=format\" data-video-url=\"https:\/\/youtu.be\/AvO9mkgOPK8\"><source src=\"https:\/\/youtu.be\/AvO9mkgOPK8\" type=\"video\/mp4\"><\/video><\/p>\n<div class=\"video-overlay\">\n<div class=\"play-icon\">\u25b6<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Productivity<\/span><br \/>\n            <span class=\"tag\">Artificial Intelligence<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">AI\u5de5\u4f5c\u53f0<\/span><br \/>\n            <span class=\"tag\">\u6a21\u578b\u805a\u5408<\/span><br \/>\n            <span class=\"tag\">\u6309\u91cf\u4ed8\u8d39<\/span><br \/>\n            <span class=\"tag\">\u81ea\u5e26\u5bc6\u94a5<\/span><br \/>\n            <span class=\"tag\">\u804a\u5929UI<\/span><br \/>\n            <span class=\"tag\">\u591a\u6a21\u578b\u5207\u6362<\/span><br \/>\n            <span class=\"tag\">\u4e13\u4e1a\u5de5\u5177<\/span><br \/>\n            <span class=\"tag\">\u56e2\u961f\u534f\u4f5c<\/span><br \/>\n            <span class=\"tag\">\u65e0\u8ba2\u9605<\/span><br \/>\n            <span class=\"tag\">LLM\u5ba2\u6237\u7aef<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u6709\u6548\u8bc4\u8bba\u805a\u7126\u5728\uff1a\u6309\u7528\u91cf\u4ed8\u8d39\u6a21\u5f0f\u89e3\u51b3\u4f01\u4e1a\u8ba2\u9605\u5806\u53e0\u6210\u672c\u95ee\u9898\uff1b\u7528\u6237\u5efa\u8bae\u589e\u52a0\u63d0\u4f9b\u5546\u4fe1\u7528\u4f59\u989d\u663e\u793a\u3001\u591a\u804a\u5929\u4e2d\u56fe\u7247\u7c98\u8d34\u652f\u6301\u53caMCP\u5b89\u88c5\u7f16\u8f91\u9009\u9879\uff1b\u4e00\u4f4d\u7528\u6237\u6295\u8bc9\u684c\u9762\u7aef\u66fe\u505c\u6b62\u5f00\u53d1\u5bfc\u81f4\u7ec8\u8eab\u8bb8\u53ef\u4f53\u9a8c\u5dee\uff1b\u591a\u4f4d\u7528\u6237\u8d5e\u8d4f\u5e76\u884c\u804a\u5929\u548c\u6700\u7ec8\u6c47\u603b\u529f\u80fd\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                TypingMind \u5728\u4ef7\u503c\u4e3b\u5f20\u4e0a\u505a\u5bf9\u4e86\u4e00\u4ef6\u4e8b\uff1a\u5b83\u6ca1\u6709\u8bd5\u56fe\u6210\u4e3a\u53e6\u4e00\u4e2aAI\u804a\u5929\u673a\u5668\u4eba\uff0c\u800c\u662f\u7cbe\u51c6\u5207\u5165\u4e86\u201c\u6a21\u578b\u5b64\u5c9b\u201d\u4e0e\u201c\u8ba2\u9605\u901a\u80c0\u201d\u7684\u4ea4\u6c47\u70b9\u3002\u5f53\u7528\u6237\u548c\u4f01\u4e1a\u5f00\u59cb\u4e3aGPT\u3001Claude\u3001Gemini\u7b49\u5404\u81ea\u652f\u4ed820\u7f8e\u5143\/\u6708\u65f6\uff0c\u201c\u81ea\u5e26\u5bc6\u94a5+\u6309\u91cf\u4ed8\u8d39\u201d\u5c31\u4e0d\u518d\u662f\u7701\u94b1\u5c0f\u6280\u5de7\uff0c\u800c\u662f\u4e00\u4e2a\u7ed3\u6784\u6027\u6210\u672c\u4f18\u5316\u65b9\u6848\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u4e0d\u8fc7\uff0c\u5b83\u7684\u771f\u6b63\u62a4\u57ce\u6cb3\u4e0d\u662f\u805a\u540818\u5bb6\u6a21\u578b\uff0c\u800c\u662f\u90a3213\u6b21\u8fed\u4ee3\u6c89\u6dc0\u4e0b\u6765\u7684\u4e13\u4e1a\u5de5\u4f5c\u6d41\u3002\u5e73\u884c\u804a\u5929\u3001\u5206\u652f\u5408\u5e76\u3001\u63d2\u4ef6\/MCP\u7cfb\u7edf\u2014\u2014\u8fd9\u4e9b\u529f\u80fd\u8ba9TypingMind\u4ece\u201c\u82b1\u54e8\u7684API\u5bb9\u5668\u201d\u5347\u7ea7\u4e3a\u201cAI\u9a71\u52a8\u7684\u751f\u4ea7\u529b\u5e73\u53f0\u201d\u3002\u521b\u59cb\u4ebaTony\u7684\u53d9\u4e8b\u4e5f\u8bc1\u660e\u4e86\u8fd9\u4e00\u70b9\uff1a\u4ece2023\u5e74\u7684\u4e2a\u4eba\u5de5\u5177\u52302026\u5e74\u7684\u56e2\u961f\u7248\u672c\uff0c\u4ea7\u54c1\u6f14\u8fdb\u8def\u5f84\u6e05\u6670\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u4f46\u98ce\u9669\u540c\u6837\u660e\u663e\u3002\u9996\u5148\uff0c\u95e8\u69db\u95ee\u9898\u2014\u2014\u65b0\u7528\u6237\u9700\u8981\u81ea\u5df1\u7533\u8bf7API\u5bc6\u94a5\u624d\u80fd\u4f53\u9a8c\u7b2c\u4e00\u53e5\u5bf9\u8bdd\uff0c\u8fd9\u5c42\u201c\u6469\u64e6\u201d\u5728AI\u5de5\u5177\u65e5\u76ca\u5185\u5377\u7684\u4eca\u5929\u53ef\u80fd\u6d41\u5931\u5927\u91cf\u5c1d\u9c9c\u7528\u6237\u3002\u5176\u6b21\uff0c\u7528\u6237\u6295\u8bc9\u7684\u201c\u684c\u9762\u7aef\u505c\u6b62\u5f00\u53d1\u201d\u6848\u4f8b\u63d0\u9192\u6211\u4eec\uff1a\u4f5c\u4e3a\u4f9d\u8d56API\u751f\u6001\u7684\u5ba2\u6237\u7aef\uff0cTypingMind\u672c\u8d28\u4e0a\u662f\u201c\u5bc4\u751f\u201d\u4e8e\u6a21\u578b\u63d0\u4f9b\u5546\u7684\uff0c\u4e00\u65e6\u67d0\u5de8\u5934\u6536\u7d27API\u7b56\u7565\u6216\u63a8\u51fa\u81ea\u6709\u6574\u5408\u754c\u9762\uff0c\u5176\u751f\u5b58\u7a7a\u95f4\u5c06\u76f4\u63a5\u53d7\u6324\u538b\u3002\u6700\u540e\uff0c4.9\u8bc4\u5206\u867d\u7136\u4eae\u773c\uff0c\u4f46\u8d1f\u9762\u8bc4\u8bba\u6697\u793a\u5386\u53f2\u7248\u672c\u8fed\u4ee3\u7684\u627f\u8bfa\u5e76\u975e\u4e00\u8d2f\u53ef\u9760\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u603b\u7ed3\uff1aTypingMind\u662f\u5f53\u4e0b\u201c\u81ea\u5e26\u94a5\u5319\u578b\u201dAI\u5ba2\u6237\u7aef\u7684\u6807\u6746\uff0c\u4f46\u5b83\u7684\u53ef\u6301\u7eed\u6027\u4e0d\u53d6\u51b3\u4e8e\u529f\u80fd\u591a\u5be1\uff0c\u800c\u53d6\u51b3\u4e8e\u80fd\u5426\u5728\u6a21\u578b\u4f9b\u5e94\u5546\u548c\u7528\u6237\u4e4b\u95f4\u5efa\u7acb\u8d77\u4e0d\u53ef\u66ff\u4ee3\u7684\u201c\u4e2d\u95f4\u5c42\u4ef7\u503c\u201d\u2014\u2014\u6bd4\u5982\u56e2\u961f\u534f\u4f5c\u4e2d\u7684\u8bb0\u5fc6\u3001\u6743\u9650\u4e0e\u5de5\u4f5c\u6d41\u7f16\u6392\u3002\u76ee\u524d\u5b83\u505a\u5f97\u4e0d\u9519\uff0c\u4f46\u9700\u8981\u8b66\u60d5\u6210\u4e3a\u201c\u53c8\u4e00\u4e2a\u88ab\u524d\u6cbf\u541e\u566c\u7684\u5de5\u5177\u201d\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">TypingMind<\/span>\n                <\/div>\n<div class=\"comment-content\">TypingMind is the most popular app to use LLM AI models with API keys. It brings you all the best models across 18 providers in one powerful AI workspace without having to pay for subscriptions to each one. TypingMind also provides the best AI experience ever with features focused on pro users like Projects, Fork\/Parallel chat, Plugins\/MCP\/Skills, and a wide range of customizable options that you literally cannot find anywhere else! Go give it a try at www.typingmind.com \ud83d\ude42<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">Hello everyone! \ud83d\udc4b\ud83d\ude04<\/p>\n<p>My name is Tony Dinh. I created TypingMind in 2023 after the ChatGPT API was released.<\/p>\n<p>I initially created the product to improve the chat experience with AI models, using my own API key so I could control token usage and avoid paying a subscription fee.<\/p>\n<p>I launched TypingMind on Product Hunt in 2023, and it was my most successful launch ever! Since that day, the team and I have continuously improved TypingMind nonstop!<\/p>\n<p>It was a wild journey for the past 3 years! We have released more than 213 updates since then, have more than 20,000 paying customers, 4.9 reviews across the board, added many features, fixed bugs, and adapted to the fast-changing space of LLMs and AI agents in general. We also added a team version for businesses that want to adopt TypingMind for their team!<\/p>\n<p>Product Hunt was the kick-off for TypingMind in 2023, and I&#8217;m so proud to launch TypingMind again here on Product Hunt in 2026! \ud83e\udd70<\/p>\n<p>If you haven&#8217;t seen TypingMind for a while, please check it out again! I promise you, the TypingMind you see today is such a different beast.<\/p>\n<p>If you have any questions, feel free to leave a comment below! I will be around all day to answer questions and chat with you all.<\/p>\n<p>Thank you very much!<\/p><\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>14<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@tony_dinh2\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@tony_dinh2<\/a>&nbsp;congrats on the launch, Tony! Looks like TypingMind has come a long way since I last checked it out. Will give it another go.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@tony_dinh2\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@tony_dinh2<\/a>&nbsp;TypingMind is by far the most advanced Chat UI, nothing comes close!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@tony_dinh2\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@tony_dinh2<\/a>&nbsp;Super cool &#8211; thanks for sharing! <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The pay per use angle is what got me. We run a bunch of AI tools in our company and subscription stacking is becoming its own cost problem. Trying this with our own keys. Congrats on the launch<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@jon_jonsson\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@jon_jonsson<\/a>Exactly this. At some point you&#8217;re paying for four different AI subscriptions and using maybe 20% of each. Pay per use with your own keys is the only model that actually scales with how you work.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@jon_jonsson\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@jon_jonsson<\/a>&nbsp;This is the real unlock. Subscription stacking quietly becomes a line item nobody owns. The open question is whether teams actually track usage per model, or just feel the bill at month end.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>So proud of TypingMind. We&#8217;ve shipped so many features, and I&#8217;m using TypingMind everyday for work and casual chats!!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@ann_ng1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@ann_ng1<\/a>&nbsp;thank you!! \ud83e\udd70<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Previously, I purchased a lifetime license for the desktop app. Then, they stopped developing the app. Terrible experience. I do not suggest!!!!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The pay as you go part is honestly underrated. I like testing diff models but juggling separate subscriptions gets old fast. Having everything in one place makes experimentation a lot easier.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Typing mind with teams is still the best, brain storming , running research with the whole team felt like a beast.<\/p>\n<p>Amazing product tony.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@absurdfounder\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@absurdfounder<\/a>&nbsp;thank you Vaibhav!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Love this. Great product <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The BYOK and pay per use model is the part I find most interesting, but it also means a new user has to go create an API key before they hit their first real &#8220;wow.&#8221; Do you see meaningful drop-off at that step, or have you found a way to shorten the path from signup to first value?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Great to see <a href=\"https:\/\/www.producthunt.com\/products\/typing-mind\" data-node-type=\"mention\" data-mention-type=\"product\" data-mention-id=\"typing-mind\" target=\"_blank\" rel=\"noopener\">@TypingMind &#8211; Chat UI for LLMs<\/a> here again. It\u2019s one of the very few AI tools that I started using years ago and are still relevant today. One of the best AI API shells out there with many built in tools and features.  <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The Finalize feature (one model reads all branches and merges them into a final answer) stood out to me. Running the same prompt through three models in parallel and then synthesizing the best answer feels like a genuinely different workflow. How long does the merge step typically take? <\/p>\n<\/p>\n<p>Congrats on the launch!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">Congratulations \ud83e\udd73 following the journey and using TypingMind everyday for personal projects. Amazing product \ud83d\ude4c<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>lets go tony! great to finally see typingmind on PH!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Happy to part of typingmind for 3 years, seen the complete product evolution with continuous shipping of feature.<\/p>\n<p>Thanks for the best work.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>Just want to bring you papercut fix and feature idea for 2026.<\/p>\n<\/p>\n<p>1.provider credit balance display under api key management<\/p>\n<p>2.Image paste support on Individual input during multi chat conversation (attachment support exit but paste support is not their)<\/p>\n<p>3.Fix : Install MCP from JSON (TM cloud connector)<\/p>\n<p>4.Fix : edit option for installed MCP<\/p>\n<\/p>\n<p>This request present in our feedback forum<\/p>\n<\/p>\n<p>Thanks again<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Tony!<br \/>I am glad to see you when I popped here today, and congrats on the success so far<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>For many tasks, free models are often sufficient. In other words, some tasks need a paid subscription, while others can be handled with free models. Is there a way to combine them in your platform?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@natalia_iankovych\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@natalia_iankovych<\/a>&nbsp;hi Natalia! In TypingMind you bring your API keys so it is very flexible! \ud83d\ude04 You can add multiple models to the app and switch between them among your chats.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>fork\/parallel chat is an interesting addition<br \/>how do you handle context across branches &#8211; does each fork get the full parent context or is it trimmed?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@nickzaleski\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@nickzaleski<\/a>&nbsp;a fork has full parent context. A parallel chat only get context from it\u2019s own branch. There is a \u201cFinalize\u201d feature that will use a chosen model to read all branches and merge them into a final answer \ud83d\ude04<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@tony_dinh2\" data-node-type=\"mention\" data-mention-type=\"user\" data-mention-id=\"tony_dinh2\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@tony_dinh2<\/a> you&#8217;re one of the most hardworking indie devs out there and your product clearly reflects that. Typing Mind has so many features, many I didn&#8217;t realise I needed them. Congrats on the launch!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@rampatra\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@rampatra<\/a>&nbsp;thank you so much, Ram!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>How do you compare to OpenRouter?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@fabian_maume\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@fabian_maume<\/a>&nbsp;Open Router gives you access to the models, TypingMind gives you a UI to use it \ud83d\ude04<\/p>\n<\/p>\n<p>You can use Open Router models on TypingMind too, it is supported natively in the app!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats Tony, I remeber when you lauched the 1st time!<\/p>\n<p>Big fan of your work, thanks for sharing your journey \ud83d\ude42<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@rodrigo_rocco\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@rodrigo_rocco<\/a>&nbsp;thank you so much Rodrigo!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>let&#8217;s go tony ! <br \/>whats the benefit for company of 5 to use your tool vs standard apps ?<br \/>do you support coding mode?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@martin_donadieu\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@martin_donadieu<\/a>&nbsp;<\/p>\n<p>The most obvious benefit is to have the flexibility to switch between models and to use multiple models in parallel! \ud83d\ude00<\/p>\n<\/p>\n<p>There is no specialized coding mode, but users can still ask the AI to write code, and TypingMind runs it in a code sandbox (provided natively by the model provider!).<\/p>\n<\/p>\n<p>Thank you for visiting our launch, Martin! \u2764\ufe0f<\/p>\n<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the launch!!!!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@nevo_david\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@nevo_david<\/a>&nbsp;thank you, Nevo! Big fan of what you do with Postiz!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#3<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/YZAQ4A3CS6KC4V\" class=\"app-title\">Spotlight by Backplanes<\/a><\/p>\n<div class=\"one-liner\">Session reports for Claude Code &#038; Codex to improve your code<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">366<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>Spotlight\u901a\u8fc7\u81ea\u52a8\u8bfb\u53d6Claude Code\u548cCodex\u7684\u4f1a\u8bdd\u8bb0\u5f55\uff0c\u751f\u6210\u53ef\u64cd\u4f5c\u62a5\u544a\uff0c\u5e2e\u52a9\u5f00\u53d1\u8005\u5373\u65f6\u53d1\u73b0\u667a\u80fd\u4f53\u5728\u7f16\u7801\u4e2d\u4ea7\u751f\u7684\u5b89\u5168\u6f0f\u6d1e\u3001\u4f4e\u6548\u6a21\u5f0f\uff0c\u5e76\u603b\u7ed3\u53ef\u590d\u7528\u7684\u6539\u8fdb\u70b9\uff0c\u89e3\u51b3\u201cAI\u4ee3\u7801\u52a9\u624b\u5931\u63a7\u4e14\u884c\u4e3a\u4e0d\u900f\u660e\u201d\u7684\u6838\u5fc3\u75db\u70b9\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/a2850ace-7f2f-4967-9125-61956176e870.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/55016199-8f77-448a-bb6b-faf4f97ac883.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/3b415287-dd21-499d-b64d-46fe2dd81d54.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/a1f5bb06-6246-4402-845e-f6492e5dfe4b.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/559868b9-70ab-4933-9792-c52401f0069c.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <video class=\"media-content\" poster=\"https:\/\/ph-files.imgix.net\/a1d1e030-e0cb-495a-9970-2e7c7ad5835f.octet-stream?auto=format\" data-video-url=\"https:\/\/www.loom.com\/share\/01ab7c9ccbe54938aa2329fa0d67d2ad\"><source src=\"https:\/\/www.loom.com\/share\/01ab7c9ccbe54938aa2329fa0d67d2ad\" type=\"video\/mp4\"><\/video><\/p>\n<div class=\"video-overlay\">\n<div class=\"play-icon\">\u25b6<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Developer Tools<\/span><br \/>\n            <span class=\"tag\">Artificial Intelligence<\/span><br \/>\n            <span class=\"tag\">Security<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">AI\u7f16\u7801\u4ee3\u7406\u76d1\u63a7<\/span><br \/>\n            <span class=\"tag\">\u4f1a\u8bdd\u62a5\u544a<\/span><br \/>\n            <span class=\"tag\">\u4ee3\u7801\u5b89\u5168\u5ba1\u8ba1<\/span><br \/>\n            <span class=\"tag\">\u667a\u80fd\u4f53\u884c\u4e3a\u53ef\u89c6\u5316<\/span><br \/>\n            <span class=\"tag\">\u5f00\u53d1\u8005\u5de5\u5177<\/span><br \/>\n            <span class=\"tag\">Claude Code<\/span><br \/>\n            <span class=\"tag\">Codex<\/span><br \/>\n            <span class=\"tag\">\u53cd\u9988\u5faa\u73af<\/span><br \/>\n            <span class=\"tag\">\u6548\u7387\u4f18\u5316<\/span><br \/>\n            <span class=\"tag\">\u514d\u8d39\u4ea7\u54c1<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u9ad8\u5ea6\u8ba4\u53ef\u5176\u5b89\u5168\u4ef7\u503c\uff0c\u591a\u6b21\u63d0\u53ca\u201c\u6cc4\u9732\u5bc6\u94a5\u201d\u3001\u201c\u672a\u68c0\u51fa\u98ce\u9669\u201d\u7b49\u771f\u5b9e\u75db\u70b9\u3002\u6838\u5fc3\u95ee\u9898\u96c6\u4e2d\u4e8e\uff1a\u5982\u4f55\u533a\u5206\u6d4b\u8bd5\u5939\u5177\u4e0e\u771f\u5b9e\u6cc4\u9732\u3001\u5982\u4f55\u652f\u6301Windows\u3001\u4ee5\u53ca\u62a5\u544a\u662f\u5426\u80fd\u8d85\u8d8a\u201c\u91cd\u653e\u201d\u63d0\u53d6\u6df1\u5c42\u6b21\u4fe1\u53f7\u3002\u521b\u4f5c\u8005\u91cd\u70b9\u56de\u5e94\u4e86\u65e0\u5ef6\u8fdf\u7684\u67b6\u6784\u53d6\u820d\u4e0e\u9690\u79c1\u8bbe\u8ba1\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                Spotlight\u7684\u806a\u660e\u4e4b\u5904\u5728\u4e8e\uff0c\u5b83\u7cbe\u51c6\u5730\u51fb\u4e2d\u4e86\u5f53\u524dAI\u7f16\u7801\u72c2\u6f6e\u4e2d\u6700\u88ab\u5ffd\u89c6\u7684\u75db\u70b9\u2014\u2014**\u53cd\u9988\u95ed\u73af\u7684\u65ad\u88c2**\u3002\u5f53\u5f00\u53d1\u8005\u4ece\u7f16\u7801\u8005\u9000\u5316\u4e3a\u201c\u5ba1\u6838\u8005\u201d\uff0c\u751a\u81f3\u201c\u65c1\u89c2\u8005\u201d\uff0cAI\u4ee3\u7406\u7684\u6bcf\u4e00\u6b21\u64cd\u4f5c\u90fd\u53d8\u6210\u4e86\u9ed1\u7bb1\u91cc\u7684\u5e7d\u7075\u884c\u52a8\u3002\u4f20\u7edf\u4ee3\u7801\u5ba1\u67e5\u5df2\u6b7b\uff0c\u800cSpotlight\u8bd5\u56fe\u4e3a\u5176\u62db\u9b42\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u5176\u4ea7\u54c1\u903b\u8f91\u503c\u5f97\u80af\u5b9a\uff1a\u4e0d\u8d70\u201c\u5185\u8054\u4ee3\u7406\u201d\u7684\u5e72\u6270\u8def\u5f84\uff0c\u800c\u662f\u901a\u8fc7\u8bfb\u53d6\u7ec8\u7aef\u81ea\u6709\u7684\u4f1a\u8bdd\u8bb0\u5f55\uff0c\u7528\u504f\u540e\u7f6e\u5206\u6790\u7684\u65b9\u5f0f\u89c4\u907f\u4e86\u5ef6\u8fdf\u548c\u5165\u4fb5\u6027\u3002\u8fd9\u79cd\u67b6\u6784\u806a\u660e\u5730\u7ed5\u8fc7\u4e86\u590d\u6742\u7684OAuth\u96c6\u6210\uff0c\u4e5f\u907f\u514d\u4e86\u6210\u4e3a\u6f5c\u5728\u7684\u653b\u51fb\u9762\u3002\u4f46\u5176\u63d0\u51fa\u7684\u201c\u9012\u5f52\u5f0f\u6539\u8fdb\u201d\u662f\u4e00\u628a\u53cc\u5203\u5251\u2014\u2014\u5b83\u4f9d\u8d56\u4f7f\u7528\u8005\u662f\u5426\u613f\u610f\u771f\u6b63\u62e5\u62b1\u8fd9\u4e9b\u201c\u6539\u8fdb\u5efa\u8bae\u201d\uff0c\u5e76\u624b\u52a8\u8c03\u6574CLAUDE.md\u6216\u7f16\u5199Skills\u3002\u8fd9\u5728\u5feb\u8282\u594f\u7684\u4ea4\u4ed8\u538b\u529b\u4e0b\uff0c\u5f88\u53ef\u80fd\u6ca6\u4e3a\u53c8\u4e00\u4e2a\u88ab\u5ffd\u7565\u7684\u201c\u4f53\u68c0\u62a5\u544a\u201d\uff0c\u800c\u975e\u65e5\u5e38\u5065\u8eab\u540e\u7684\u201c\u6559\u7ec3\u201d\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u771f\u6b63\u7684\u4ef7\u503c\u5728\u4e8e\u5b89\u5168\u5ba1\u8ba1\u4fa7\u3002\u56e2\u961f\u4ece\u81ea\u8eab\u201c\u5dee\u70b9\u4e22API\u5bc6\u94a5\u201d\u7684\u6050\u60e7\u51fa\u53d1\uff0c\u5c06\u201c\u53ef\u89c6\u6027\u201d\u4f5c\u4e3a\u7b2c\u4e00\u6027\u539f\u7406\u662f\u660e\u667a\u7684\u3002\u5728\u6240\u6709\u4eba\u90fd\u5728\u76f2\u76ee\u8ffd\u6c42\u8f93\u51fa\u901f\u5ea6\u7684\u5f53\u4e0b\uff0c\u8fd9\u79cd\u201c\u5239\u8f66\u201d\u80fd\u529b\u7a00\u7f3a\u4e14\u81f4\u547d\u3002\u7136\u800c\uff0c\u5b83\u76ee\u524d\u4ecd\u662f\u4e00\u4e2a\u201c\u770b\u540e\u53cd\u9988\u201d\u7684\u89c2\u5bdf\u8005\u3002\u672a\u6765\u5982\u679c\u65e0\u6cd5\u4ece\u201c\u53d1\u73b0\u98ce\u9669\u201d\u8fdb\u5316\u5230\u201c\u81ea\u52a8\u62e6\u622a\u98ce\u9669\u201d\u6216\u201c\u63d0\u4f9b\u53ef\u7f16\u7a0b\u7684\u9632\u62a4\u9884\u6848\u201d\uff0c\u5b83\u53ef\u80fd\u4f1a\u6210\u4e3a\u5f00\u53d1\u8005\u94b1\u5305\u91cc\u7684\u53c8\u4e00\u4e2a\u201c\u826f\u5fc3\u53d1\u73b0\u201d\uff0c\u800c\u975e\u5de5\u4f5c\u6d41\u4e2d\u7684\u5fc5\u9700\u54c1\u3002\u514d\u8d39\u7b56\u7565\u662f\u62a2\u5360\u5fc3\u667a\u7684\u5999\u62db\uff0c\u4f46\u201c\u5982\u4f55\u8ba9\u7528\u6237\u6bcf\u65e5\u5fc5\u770b\u201d\u624d\u662f\u5176\u751f\u6b7b\u7ebf\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">Spotlight by Backplanes<\/span>\n                <\/div>\n<div class=\"comment-content\">Keep up with your agents. Spotlight reads your Claude Code and Codex sessions and shows you what your agents actually did, and how to get recursively better every session: what to fix now, what to ship better next time, what&#8217;s worth sharing. One harness or seven, solo or across your team. Free.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Hey Product Hunt. We&#8217;re Seth, Neil, and Nick, and we&#8217;ve spent a decade in security and dev tools across Google\/Gmail, Valimail, Twilio, and Algolia.<\/p>\n<\/p>\n<p>We built <a href=\"https:\/\/backplanes.com\/?ref=producthunt\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Spotlight by Backplanes<\/a> to help you keep up with your agents. It reads your Claude Code and Codex sessions and shows you what your agents actually did: session reports that make you a better engineer, every day.<\/p>\n<\/p>\n<p>This started with a scare. Neil asked Claude to fix one file. It read 47, including his ~\/.ssh keys, and wrote an API key into a tracked .env. We build security software, and our own agents did this. We missed it, and caught it by accident while investigating something else.<\/p>\n<\/p>\n<p>So we looked deeper, stitching our Claude and Codex sessions together across machines. Two things floored us: how much we&#8217;d missed, and how many good moves we were making in one place but not another. Surfaced and shared, those patterns made us better, every day.<\/p>\n<\/p>\n<p>That&#8217;s what <a href=\"https:\/\/backplanes.com\/?ref=producthunt\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Spotlight<\/a> does for you. After every session, you get a report: what to fix now, what to ship better next time, what&#8217;s worth sharing. One harness or seven, solo or across your team.<\/p>\n<\/p>\n<p>We&#8217;re building toward a world where you can see and manage everything your agents do. Visibility is where it starts, and we think everyone deserves to know what their agents are doing, so we&#8217;re making this piece free. We&#8217;ll be offering paid features and automations in the near future; seeing what your agents did won&#8217;t cost you. Private and secure by design, with details at <a href=\"https:\/\/backplanes.com\/trust\/?ref=producthunt\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">backplanes.com\/trust<\/a>.<\/p>\n<\/p>\n<p>Install is one line, and your first report lands in ~2 minutes: Get started on <a href=\"https:\/\/backplanes.com\/?ref=producthunt\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">backplanes.com<\/a>.<\/p>\n<\/p>\n<p>Click here to <a href=\"https:\/\/join.slack.com\/t\/backplanescommunity\/shared_invite\/zt-40a7vr634-prUGl_B7~YG~7tmmkWFdsA\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">join our Slack and say hello<\/a>.<\/p>\n<\/p>\n<p>We hope you love <a href=\"https:\/\/backplanes.com\/?ref=producthunt\" target=\"_blank\" rel=\"nofollow noopener noreferrer\"><strong>Spotlight<\/strong><\/a>, and we can&#8217;t wait to hear what it illuminates for you.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>28<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@antifreeze\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@antifreeze<\/a>&nbsp;congrats on the launch! Such a needed product right now.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>3<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@antifreeze\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@antifreeze<\/a>&nbsp;The SSH keys is exactly why this matters, gents move fast and <\/p>\n<p>the blast radius is invisible until it isn&#8217;t. Congrats on launch. Trying it today<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>5<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@antifreeze\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@antifreeze<\/a>&nbsp;S\/O for this launch! Keep up the great work \ud83d\udc4f\ud83d\udc4f<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>As of this year, I\u2019ve become a \u201cnon-engineer engineer\u201d, letting Claude and all his robot friends abuse my terminal. For example, the other day I just discovered how to <em>actually<\/em> use a `.env` file. Yes, I am embarrassed.<\/p>\n<\/p>\n<p>How was I forced to discover this? <a href=\"https:\/\/www.producthunt.com\/@antifreeze\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@antifreeze<\/a> (who I&#8217;ve known for what? 20 years??) gave me a demo of Backplanes and in a reports on one of my coding sessions I saw red:<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/84ffb93e-d3e2-4d41-a58f-335cf8bedfbe.png?auto=compress,format&amp;codec=mozjpeg&amp;cs=strip\" style=\"max-width: 100%\"><\/p>\n<p>And this wasn&#8217;t the only red I saw&#8230;!<\/p>\n<\/p>\n<p><strong>Backplanes showed me the ugly underbelly of my agent sessions: leaked credentials, missing tests, sloppy patterns I\u2019d normalized because the app I was building &#8220;worked&#8221;.<\/strong><\/p>\n<\/p>\n<p><em>By shipping like a maniac<\/em>, I leaked my secrets all over the place \u2014 and Backplanes provided me actionable steps to get my shit locked down.<\/p>\n<\/p>\n<p>This isn&#8217;t just \u201cagent analytics.\u201d It\u2019s a backstop for the bullshit your coding agents quietly create while you\u2019re moving at AGI speed. Like being shown what bacteria lives on your toothbrush when you stop to under a microscope. \ud83e\udda0\ud83e\udd2e<\/p>\n<\/p>\n<p>So if you haven&#8217;t been practicing excellent agentic hygiene, give Backplanes a try.<\/p>\n<\/p>\n<p><strong>Because behind every successful coding session is a backplane.<\/strong><\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>8<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@chrismessina\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@chrismessina<\/a>&nbsp;Twenty years and I pay it off by showing you the bacteria on your toothbrush. \ud83d\ude05 Don&#8217;t be embarrassed about the red &#8212; we build security software and our own reports lit up too. It would be embarrassing if it weren&#8217;t happening to everyone.<\/p>\n<\/p>\n<p>&#8220;Non-engineer engineers&#8221; are exactly why we made seeing this free: everybody&#8217;s shipping like maniacs now, and everyone deserves to know what their agents are doing. (And &#8220;behind every successful coding session is a backplane&#8221; is going on a shirt.)<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>3<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">You emphasize \u201cno OAuth into Anthropic\/OpenAI\u201d and still show org-level rollups (security\/engineering\/spend) with spend reconciliation close to invoices. How are you attributing sessions and spend across engineers\/repos\/tools without provider-side integrations, and what were the key tradeoffs you made to ship that early versus, say, real-time monitoring or policy gating?<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>5<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@curiouskitty\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@curiouskitty<\/a>&nbsp;This one&#8217;s fun to answer, because the trick is that there&#8217;s no trick: the harnesses already write everything down. Claude Code and Codex keep a transcript of every session. Spotlight&#8217;s CLI watches those transcripts on your behalf, redacts sensitive info from new activity locally, and then sends the redacted version up for pattern analysis and report generation.<\/p>\n<p>So attribution falls out of the session itself: it knows its user, its project, and its tools; org rollups are aggregation, not integration. Spend is computed from the same token counts the provider meters, which is why it tracks invoices closely. It&#8217;s an estimate by construction, but a well-grounded one, and no OAuth or provider-side hooks are involved.<\/p>\n<p>On tradeoffs: we deliberately chose to start with reading over intercepting. Real-time gating means sitting in the request path, and a proxy adds latency to every call and breaks when harnesses update. Our way, you&#8217;re minutes behind live but never blocked mid-flight: a genuine trade, and one that buys zero added latency and zero workflow friction.<\/p>\n<p>We&#8217;d love for you to take a look. The install is one line, and your first report lands in a few minutes. Let us know what you find! \ud83d\ude42<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>5<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The session report angle makes sense. What I&#8217;m curious about is how much signal you&#8217;re actually extracting versus just replaying what happened. Claude Code sessions can get noisy fast, lots of back-and-forth, abandoned branches, retried prompts, and the raw transcript isn&#8217;t that useful without some layer of interpretation on top. Does Spotlight surface things like where the agent got stuck, or which tool calls failed silently, or is the report mostly a structured summary of the final output? Also curious what the security topic covers here, whether you&#8217;re flagging things like secrets exposed in prompts or risky code patterns the agent introduced, since that would be a genuinely different use case than the reporting side.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>5<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>You&#8217;re spot on <a href=\"https:\/\/www.producthunt.com\/@fberrez1\" data-node-type=\"mention\" data-mention-type=\"user\" data-mention-id=\"fberrez1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@fberrez1<\/a> : the session replay is the easy part; the interpretation layer is the product.<\/p>\n<p>Short version: the raw session info is the input, not the report. The bookkeeping (counts, files touched, domains, cost) is computed mechanically, and the analysis on top is held to one rule: every finding has to point at the specific moment in the session it came from. If it can&#8217;t cite the event, it doesn&#8217;t ship.<\/p>\n<p>On noise: that&#8217;s most of what the engineering portion of the report is for. It surfaces retry storms, redundant tool loops, repeated lookups that should have been cached, and it distinguishes failing retries from deliberate re-verification. Those land as &#8220;Faster Next Time&#8221; items with payoff grounded in the session, like &#8220;~60 calls collapsed into one.&#8221; CI, test, and lint outcomes get flagged when the transcript shows them. And when something isn&#8217;t observable, the report says so in a blind-spots section instead of guessing. We&#8217;d rather show you an empty field than an invented one.<\/p>\n<p>Security is a separate findings stream, severity-ordered, with categories like credential, shell, file, network, production, and subagent. Concretely: a live-looking key written into a tracked .env (with a paste-into-Claude prompt to rotate it), a destructive command against prod with no dry run, a call to a domain you&#8217;ve never used, a subagent reaching outside the project. One detail worth knowing: secrets are redacted on your machine before anything uploads and a second pass is run on the server before we write, so the report can flag the secret class without ever holding the value.<\/p>\n<p>You&#8217;re right that those are two different use cases. The report carries both on purpose: the security stream and the engineering narrative come from one pass over the same session and give you the full picture. That&#8217;s the bet we&#8217;re making.<\/p>\n<p>Run it on your messiest session and tell us what you find, here on our community Slack. \ud83d\ude42<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@fberrez1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@fberrez1<\/a>&nbsp;Neil&#8217;s got the depth covered, so just one top line note: the part that surprised us most is how high-signal the reports turned out to be. Even on our own sessions &#8212; and we live in this thing &#8212; they cut through all the back-and-forth and retries and showed us things that really mattered, starting with credentials we&#8217;d leaked and never noticed. We were expecting most reports to have very little useful signal, and that you&#8217;d have to wait to see things in aggregate stuff for the really meaningful items to bubble up. Nope! The important stuff is right there from the get go. Would love to hear what you experience and if it matches ours. Thank you!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>had a blast collaborating with <a href=\"https:\/\/www.producthunt.com\/@gogogadgetneil\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@gogogadgetneil<\/a> <a href=\"https:\/\/www.producthunt.com\/@natwar86\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@natwar86<\/a> and team!<\/p>\n<\/p>\n<p>Some recent discussions here pointed out that using a terminal like <a href=\"https:\/\/www.producthunt.com\/products\/claude-code\" target=\"_blank\" rel=\"noopener\">@Claude Code<\/a> might feel too &#8220;zoomed out&#8221; from the code. Many prefer to stay in the loop and see what their agents are actually doing. <a href=\"https:\/\/www.producthunt.com\/p\/kilocode\/how-do-you-like-to-work-with-ai-coding-agents\" target=\"_blank\" rel=\"noopener\">[1]<\/a><\/p>\n<\/p>\n<p><a href=\"https:\/\/www.producthunt.com\/products\/backplanes\" target=\"_blank\" rel=\"noopener\">@Spotlight by Backplanes<\/a> fixed just that. It brings clarity to your agentic coding sessions and, more importantly, it compounds, making you a better engineer every session.<\/p>\n<\/p>\n<p>Go to <a href=\"https:\/\/www.backplanes.com\/?ref=producthunt\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">backplanes.com<\/a> to generate your first report in minutes &#8211; or see <a href=\"https:\/\/www.backplanes.com\/?ref=producthunt#report\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">sample report here<\/a>.<\/p>\n<\/p>\n<p>S\/O to the ?makers, keep up the great work \ud83d\udc4f\ud83d\udc4f<\/p>\n<\/p>\n<p>[1]: <a href=\"https:\/\/www.producthunt.com\/p\/kilocode\/how-do-you-like-to-work-with-ai-coding-agents\" target=\"_blank\" rel=\"noopener\">How do you like to work with AI coding agents?<\/a><\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>5<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The OS-level instrumentation approach is smart. It captures what agents actually do rather than what they report back. We&#8217;ve run into exactly this problem: an agent silently inlining an API key when it couldn&#8217;t find the env var, and that key landing in git history. How do you distinguish intentional credential usage in test fixtures from actual leakage?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>4<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@anand_thakkar1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@anand_thakkar1<\/a>, that war story could be one of ours: an agent improvising around a missing env var by quietly inlining the key is the kind of move nobody catches in review. One small correction, it&#8217;s not OS-level instrumentation. Spotlight reads only the session transcripts the harnesses themselves write, nothing else on your machine. But your key insight holds: it&#8217;s what the tools actually did, not what the agent says it did.<\/p>\n<\/p>\n<p>On fixtures vs leakage, we treat those as two different jobs. Redaction is deliberately paranoid: anything secret-shaped gets masked on your machine before upload, fixtures included, because that step shouldn&#8217;t be guessing intent. The judgment lives in the analysis: where the credential landed, whether it looks live, and what the session was doing at the time, with severity reflecting that context. A dummy key in a test fixture and a live-looking key written into a tracked file are very different findings. Every finding carries its evidence, so on close calls you&#8217;re the judge, with the receipts in front of you. <\/p>\n<\/p>\n<p>We&#8217;d rather flag a fixture at low severity than miss a live key. That asymmetry is on purpose.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>Thanks for the support! Let&#8217;s spread the word on LinkedIn, <a href=\"https:\/\/www.linkedin.com\/feed\/update\/urn:li:activity:7470424664985710592\/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">repost this<\/a><\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>It is not built for windows right? because i am only seeing  for <strong>macOS, Linux, and WSL 2.<\/strong><\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@daniel_oyetunde\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@daniel_oyetunde<\/a>&nbsp;Great questions! Windows support is a priority for us now. It&#8217;s being actively worked on, and we expect to have it out in the very near-term.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Been waiting for a product like this to arrive. Coding agents broke the feedback loop that used to make engineers better. You don&#8217;t write the code, you don&#8217;t review most of it, so where does the learning come from? Everything in the stack accelerates output; nothing closes the loop back to the human. Session reports as a feedback mechanism (not just an audit trail) is the right shape for that. The &#8220;what&#8217;s worth keeping&#8221; part matters more than the scary findings, IMO.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@kcpike\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@kcpike<\/a>&nbsp;framing this! S\/O to ?makers for building this<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@kcpike\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@kcpike<\/a>&nbsp;&#8220;Nothing closes the loop back to the human&#8221; is the cleanest statement of the problem I&#8217;ve seen yet. \ud83d\ude42 That&#8217;s exactly it: review used to be where engineers got better, and agents quietly took that away while speeding everything else up.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@kcpike\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@kcpike<\/a>&nbsp;1000% Everything is changing under our feet at a crazy rate, so the faster we learn and improve the better we get and the faster we all go! Recursively compounding returns!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>&#8220;Recursively better every session&#8221; is exactly the missing piece I keep hand-rolling. I write a tiny end-of-session log after every Claude Code run and the gold is always the same: what I had to babysit and why. Automating that and feeding it back as a skill\/memory primitive will save hours per week. Free + multi-harness is the right packaging. Following.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>Amazing! FYI you can see a sample report here: <a href=\"https:\/\/www.backplanes.com\/features\/session-reports#anatomy?ref=producthunt\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/www.backplanes.com\/features\/session-reports<\/a><\/p>\n<p>Curious to have your thoughts about it<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@david_marko\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@david_marko<\/a>, the end-of-session log is the certified power-user move, and you&#8217;ve described our origin from the other side: we were hand-rolling the same ritual and got tired of it. \ud83d\ude42<\/p>\n<\/p>\n<p>If you&#8217;re open to it, I&#8217;d love to see what would happen if you ran your hand-rolled log running for a week alongside Spotlight, and then let us know what your log caught that we missed, or vice versa. That kind of feedback is gold for us, and it sounds like you&#8217;re exactly the right type of person to give it.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>300$ for 50min coding. what kind of models are you running? \ud83d\ude05 How does it get recursivly better for each session i dont get it? reminds off <a href=\"https:\/\/entire.io\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">entire.io<\/a> <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@conduit_design\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@conduit_design<\/a>&nbsp;Ha, right?! The wild part: that&#8217;s the agents&#8217; own tab, we just hand you the receipt. It&#8217;s crazy how quickly token usage accelerates when you&#8217;re running multiple subagents on an intensive job, and Fable pricing is going to make this even more fun for all of us soon. \ud83d\ude05<\/p>\n<p>On &#8220;recursively better,&#8221; the idea is that it&#8217;s a loop with you in it. The model never changes; your setup does. Each report turns what happened into concrete and actionable advice: a fix to apply, a <a href=\"http:\/\/CLAUDE.md\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">CLAUDE.md<\/a> line to include, a Skill to draft. Your agent loads that richer setup next session and starts more informed than the last one. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The &#8220;what your agents actually did&#8221; angle is great, that read-47-files scare is too real. When you&#8217;re running several harnesses at once, does Spotlight give you one combined report or one per session?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>Thanks<a href=\"https:\/\/www.producthunt.com\/@ianhxu\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@ianhxu<\/a>. &#8220;Too real&#8221; is exactly how it felt on the inside too. \ud83d\ude42 The answer is both, at different layers. Each session gets its own report, with its own findings and evidence, so you know exactly which session did what, and exactly what to do about it.<\/p>\n<p>Running several harnesses at once just means several reports, and your Claude Code and Codex reports live side by side in Spotlight. But your highest-leverage opportunities are often in the trends and patterns across sessions, and so Spotlight gives you a report of what&#8217;s important across all of them. And finally, connect your whole team and the view widens even further: patterns and trends across every engineer in an org. <\/p>\n<p>One individual or a team, one harness or seven, Spotlight gives you both the detail and the big picture.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<blockquote>\n<p>&#8220;The &#8220;what your agents actually did&#8221; angle is great, that read-47-files scare is too real.&#8221;<\/p>\n<\/blockquote>\n<p><a href=\"https:\/\/www.producthunt.com\/@ianhxu\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@ianhxu<\/a>&nbsp;Fun fact: This &#8220;read-47-files scare&#8221; actually is a true story! See background story by <a href=\"https:\/\/www.producthunt.com\/@antifreeze\" data-node-type=\"mention\" data-mention-type=\"user\" data-mention-id=\"antifreeze\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@antifreeze<\/a> <a href=\"https:\/\/www.producthunt.com\/products\/backplanes\/launches\/spotlight-by-backplanes?comment=5438354\" target=\"_blank\" rel=\"noopener\">here<\/a><\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The scary part of vibe coding fast isn&#8217;t the bug you catch, it&#8217;s the secret you committed three sessions ago and never noticed. I spent years in risk and security before I ever touched Claude Code, so &#8220;what my agent actually did&#8221; is exactly the report I always wished I had. Does Spotlight call out the security stuff specifically, leaked keys, missing checks, or is it more about code quality and patterns?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@luca_capone\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@luca_capone<\/a>, &#8220;the secret you committed three sessions ago&#8221; is almost word-for-word how Spotlight actually started for us: I asked Claude to fix one file, and an API key ended up in a tracked .env that we only caught by accident. So yes, security is very much called out specifically, and it leads the report rather than riding along. Findings arrive severity-ordered in their own stream: secrets landing in files git tracks, prod-touching commands that skipped a dry run, an agent quietly reaching a service you&#8217;ve never used, each with the evidence behind it and a concrete fix. <\/p>\n<\/p>\n<p>Code quality and patterns that can help make you more effective with your harness are in there too, so the report always gives you value, even when there are no security-related findings. And since those transcripts are already sitting on your machine, the first report can start with the sessions you&#8217;ve already run. Your &#8220;three sessions ago&#8221; is still catchable. \ud83d\ude42<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@luca_capone\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@luca_capone<\/a>&nbsp;exactly! Would love for you to give Spotlight a spin and tell us what lands for you, and what we could improve!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Well done! Was post-session reporting a deliberate call over an inline guardrail that interrupts the agent mid-write (i.e. less intrusive, keeps you in flow)?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@artstavenka1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@artstavenka1<\/a>&nbsp;Thanks, Art! Definitely deliberate, but one (good!) clarification: it&#8217;s not limited to being post-session. Spotlight reports actually build while you work, just minutes behind your agent, so you&#8217;re not waiting for a session to end to find out what happened. <\/p>\n<\/p>\n<p>What we deliberately avoided is the inline path. A guardrail that interrupts mid-write has to sit between you and the model, with the latency and potential breakage that path implies, and we very much want to help keep you in flow. \ud83d\ude42<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>looks really cool! Gonna take it for a spin<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@louislecat\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@louislecat<\/a>&nbsp;lfg! here you go: <a href=\"http:\/\/backplanes.com?ref=producthunt\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">backplanes.com<\/a><\/p>\n<\/p>\n<p>looking forward to your thoughts<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@louislecat\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@louislecat<\/a>&nbsp;amazing! excited to hear what you think and what you&#8217;d like us to build next!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Hey congrats on the launch!<\/p>\n<p>This looks really promising. I\u2019ve had way too many Claude sessions where I come back after a break and have no clue what just happened in the project. The automatic capture + those session summaries with the \u201cneeds review\u201d flags feel like such a sanity saver.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@van_ho\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@van_ho<\/a>&nbsp;: Thanks, Van! &#8220;Come back after a break and have no clue what just happened&#8221; is exactly the moment we built this for. If you give it a run, I&#8217;d love to hear what your first report catches. \ud83d\ude42<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<blockquote>\n<p>I\u2019ve had way too many Claude sessions where I come back after a break and have no clue what just happened in the project.<\/p>\n<\/blockquote>\n<p>Spot on! Go to <a href=\"https:\/\/www.backplanes.com\/?ref=producthunt\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">backplanes.com<\/a> and generate your first report. Curious to have your thoughts about the result \ud83d\udc40<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats @antifreeze &#8211; this is one of those products that feels obvious once you see it.<\/p>\n<\/p>\n<p>I\u2019m using Claude Code\/Codex every day right now, and the trade off is you don\u2019t really know what got touched, what got skipped, or what weird security debt just got created. In our space making sure everything is tightened up and polished is a necessity more than ever. <\/p>\n<\/p>\n<p>Spotlight makes it clear what actually happened. Every team using agents seriously is going to need this. Bullish. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@armand\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@armand<\/a>&nbsp;thank you! &#8220;Obvious once you see it&#8221; is the best kind of compliment. Excited to hear what Spotlight illuminates for you&#8211; and what you wish it showed. That&#8217;s the stuff we want to build next!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<blockquote>\n<p>&#8220;I\u2019m using Claude Code\/Codex every day right now, and the trade off is you don\u2019t really know what got touched, what got skipped, or what weird security debt just got created.&#8221;<\/p>\n<\/blockquote>\n<p><a href=\"https:\/\/www.producthunt.com\/@armand\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@armand<\/a>&nbsp;exactly! <a href=\"https:\/\/www.producthunt.com\/products\/backplanes\" data-node-type=\"mention\" data-mention-type=\"product\" data-mention-id=\"backplanes\" target=\"_blank\" rel=\"noopener\">@Spotlight by Backplanes<\/a> brings clarity to your sessions. it improves your code and makes you a better engineer. <\/p>\n<\/p>\n<p>S\/O to <a href=\"https:\/\/www.producthunt.com\/@antifreeze\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@antifreeze<\/a> <a href=\"https:\/\/www.producthunt.com\/@gogogadgetneil\" data-node-type=\"mention\" data-mention-type=\"user\" data-mention-id=\"gogogadgetneil\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@gogogadgetneil<\/a> <a href=\"https:\/\/www.producthunt.com\/@natwar86\" data-node-type=\"mention\" data-mention-type=\"user\" data-mention-id=\"natwar86\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@natwar86<\/a> and team<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>3<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Spotlight replaced a bespoke string of skills I would have to run by hand. Super helpful!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@richiebonilla\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@richiebonilla<\/a>&nbsp;agreed!  we think there&#8217;s a real opportunity here for Spotlight to help build better skills for engineers on the fly based on the content of these reports.  We&#8217;re excited to make engineers who use coding harnesses faster, safer and more cost effective!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@richiebonilla\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@richiebonilla<\/a>, &#8220;a bespoke string of skills run by hand&#8221; is exactly the ritual we kept finding, and living ourselves. Replacing yours is about the highest compliment a tool like this can get, so thank you. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This hits a real blind spot with coding agents. They can move fast, but knowing what they quietly touched, broke, or exposed afterward feels just as important as the code they shipped.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>Thanks, <a href=\"https:\/\/www.producthunt.com\/@farrukh_butt1\" data-node-type=\"mention\" data-mention-type=\"user\" data-mention-id=\"farrukh_butt1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@farrukh_butt1<\/a> &#8220;quietly&#8221; is the certainly operative word: the touching, breaking, and exposing all happen mid-flow, in the part nobody&#8217;s watching, while the shipped code gets all the attention. \ud83d\ude42<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This is rad. kind of terrifying to see how much some of my sessions cost!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@yrechtman\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@yrechtman<\/a> &#8220;Rad and kind of terrifying&#8221; is the almost universal reaction so far. \ud83d\ude09 <\/p>\n<\/p>\n<p>It&#8217;s the bar tab after a great night: the fun was real, and now there&#8217;s an itemized record of exactly how. <\/p>\n<\/p>\n<p>The difference is this tab works for <em>you<\/em>. It shows what drove the cost, and the biggest line items usually turn out to be the easiest fixes: the same dead end paid for ten times, an agent left grinding away on the wrong thing. <\/p>\n<\/p>\n<p>Curious to hear if your next session&#8217;s number behaves.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the launch and best of luck today. Looking forward to seeing how developers use Spotlight to build better feedback loops around their AI-assisted development process.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>Thanks<a href=\"https:\/\/www.producthunt.com\/@malithmcrdev\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@malithmcrdev<\/a>&nbsp;Malith! &#8220;Feedback loops&#8221; is exactly the right frame, and it&#8217;s the whole bet: agents sped everything up except the part where the human gets better. Watching the first reports land today and seeing what people fix first has been the best part of launch day so far. \ud83d\ude42<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">Really like how Spotlight turns hidden agent behavior into clear reports, what\u2019s been the most eye-opening pattern you\u2019ve seen teams discover so far?<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@odeth_negapatan1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@odeth_negapatan1<\/a>&nbsp;honest answer: the most eye-opening pattern wasn&#8217;t actually a risk. When we stitched our own sessions together, the scary stuff was there (an API key in a tracked file started this product), but the bigger surprise was how many good moves never traveled. One of us had solved a problem cleanly, in one session, on one machine, and the rest of us kept burning time on the same thing for weeks. Nobody was hiding anything; there was just no surface for the unlock to move across. That discovery was a genuine unlock for us, and is a core part of why Spotlight focuses so heavily on highlighting effective patterns worth sharing..<\/p>\n<\/p>\n<p>What I&#8217;ve found fascinating is almost every first report we&#8217;ve watched land in person contains one thing the person would have sworn didn&#8217;t happen. That moment is kind of the product. Curious what yours catches, if you give it a run. \ud83d\ude42<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The interpretation layer on top of raw transcripts is the real product here. Distinguishing a retry storm from deliberate re-verification, or flagging a credential class without holding the value, it&#8217;s genuine signal extraction. We&#8217;ve wrestled with agent filesystem boundary decisions. How do you handle cross-session pattern detection when the same agent operates across different repos or machines?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@retain_dev\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@retain_dev<\/a>&nbsp;Gaurav, &#8220;filesystem boundary decisions&#8221; tells me we&#8217;ve fought some of the same battles. \ud83d\ude42 <\/p>\n<\/p>\n<p>Short answer: the anchor is identity, not inference. The CLI is signed in as you, so every session carries the same account identity no matter which repo or machine it ran on, with the repo, harness, and model riding along as context. Patterns aggregate across the account, so the same retry habit surfaces whether it happened in your API repo on a desktop or a scratch project on a laptop. That&#8217;s literally how Spotlight started for us: stitching our own sessions together across machines, and being floored by how much we&#8217;d missed and how few of our good patterns traveled. <\/p>\n<\/p>\n<p>One thing we deliberately don&#8217;t do is behavioral fingerprinting to guess &#8220;same agent&#8221; across accounts: identity stays explicit and predictable. And since you mentioned boundaries: every report flags file access outside the project, per session, so drift is visible long before it needs to be policy.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The Neil story is the real pitch here, not productivity, but security. Most devs assume they&#8217;re reviewing what the agent does, but at scale (multiple sessions, multiple team members), drift is invisible. The framing as &#8220;session reports&#8221; makes it feel like a dev tool, but this is really an audit trail. Smart. Curious whether you&#8217;ll add diff-level visibility (which files were read, not just that 47 were).<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@keirodev\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@keirodev<\/a>&nbsp;K\u00e9vin, speaking as the Neil in the story and a career-long security and privacy nerd: agreed, the scare is the pitch. \ud83d\ude42 <\/p>\n<\/p>\n<p>Your &#8220;drift is invisible at scale&#8221; line is exactly the problem statement, too: one engineer can review one session, but nobody reviews session forty-seven across six teammates.<\/p>\n<\/p>\n<p>On &#8220;really an audit trail&#8221;: half yes, and the half matters. It has the rigor of one, every finding cites the exact moment in the session it came from. But it&#8217;s pointed forward, not backward. An audit trail waits for the auditor; these reports feed your next session: what to fix, what to codify, what&#8217;s worth sharing. Same evidence discipline, opposite direction.<\/p>\n<\/p>\n<p>And good news on file-level visibility: that&#8217;s not roadmap, it&#8217;s already in there. The 47 is the headline number, and the report under it lists the files, read vs written, inside or outside the project, with risky paths tagged, env files and credential-shaped paths included. For content-level changes we go finding-first: when a write matters, the finding cites it with evidence, rather than re-rendering diffs git already shows you better.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This is a useful direction. For coding agents, the hard part is usually not generating more code, it is making the session reviewable afterward.<\/p>\n<p>The report I\u2019d want is pretty boring: changed files, risky assumptions, tests\/checks run, failed attempts, and a short \u201cwhat a human should look at first\u201d section.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@kevinzrzgg\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@kevinzrzgg<\/a>, you seem to have written our report spec almost exactly. \ud83d\ude42<\/p>\n<\/p>\n<p>Changed files: all files read and written are in there. Tests and checks: flagged with their outcomes when the session shows them. Failed attempts: called out, including the distinction between deliberate re-verification and flailing retries. &#8220;What a human should look at first&#8221;: that&#8217;s the top of the report, a one-line verdict with the main outcome, then findings ordered by severity and guidance on what to do for each.<\/p>\n<p>The one we can only claim half credit on is risky assumptions: concrete risky choices surface as findings, and a blind-spots section names what the report couldn&#8217;t verify, but a dedicated assumptions section is a great idea.<\/p>\n<p>And we&#8217;re with you on boring: the standing rule inside the report is no invented findings and no padded advice, an empty section beats a manufactured one.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Love this! As an enthusiastic-but-amateur engineer, this is super useful. The rapid evolution of coding agents are like katanas; incredibly powerful tools when used correctly. Wield them wrong and you&#8217;ll cut your own arm off (I&#8217;ve done it many times). Having an expert keep tabs on ensuring both me and my agent(s) aren&#8217;t going off-piste is critical. <\/p>\n<p>Looking forward to see how Spotlight and Backplanes evolve. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@robskigb\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@robskigb<\/a>&nbsp;thanks for the support! IMHO you&#8217;ll enjoy using <a href=\"https:\/\/www.producthunt.com\/products\/backplanes\" data-node-type=\"mention\" data-mention-type=\"product\" data-mention-id=\"backplanes\" target=\"_blank\" rel=\"noopener\">@Spotlight by Backplanes<\/a> as it doesn&#8217;t just improve your code, it also makes you a better engineer. <\/p>\n<\/p>\n<p>Give it a spin and generate your first report on <a href=\"http:\/\/backplanes.com\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">backplanes.com<\/a> &#8212; enjoy!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@robskigb\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@robskigb<\/a>&nbsp;Thanks! These agents are getting more and more powerful by the day and, as a wise man once said, &#8220;With Great Power Comes Great Responsibility.&#8221;  We&#8217;re excited to introduce Spotlight as a way to use these agents to their fullest, but also still be safe as you do it!  Thanks again!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@robskigb\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@robskigb<\/a>&nbsp;Thanks for your support here! Looking forward to Backplanes being your sheath, or armor, or whatever the appropriate katana-analogy-extension would be. \ud83d\ude42<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>There\u2019s a tension right now between allowing your team to adopt cutting edge AI tools &amp; maintaining good security practices. Backplanes is solving that so you can move fast without compromising on security.<\/p>\n<\/p>\n<p>Seth, Neil and Nick are the perfect team to be building this product and I\u2019m thrilled to be an early tester and customer.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@walkeriwilliams\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@walkeriwilliams<\/a>&nbsp;Walker! You believed before there was anything to test, and you&#8217;ve kept the feedback sharp and neverending ever since &#8212; in the best way. Spotlight is better for every round of it. Thank you. Keep it coming!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>love to see this product, what&#8217;s most valuable insight you learn from user&#8217;s work in Claude Code?<\/p>\n<p>Please just take my money.. I will love to try it out<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the launch! Excited to see how this evolves.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@benparr\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@benparr<\/a>&nbsp;thank you! Super curious what you learn from Spotlight and how we can make it better for you!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>this is smart. the gap right now with AI coding agents is that most people have no feedback loop \u2014 they ship what the agent outputs and hope for the best. having session-level visibility into what actually happened is the kind of thing that separates someone who uses AI well from someone who just uses AI. curious how granular the reports get on code quality vs just activity metrics?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@ozandag\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@ozandag<\/a> Thanks for comment Ozan.&nbsp;This is a great question!  <\/p>\n<p>We don&#8217;t do code quality analysis yet, but what we do is deep analysis of specific sessions and also all your sessions in aggregate.  The report covers a few major areas:<\/p>\n<ol>\n<li>\n<p>Things you really should watch out for:<\/p>\n<ul>\n<li>\n<p>Was a credential sent out inappropriately?<\/p>\n<\/li>\n<li>\n<p>Was PII sent to a website that wasn&#8217;t known?<\/p>\n<\/li>\n<li>\n<p>Did the agent access production without knowledge  consent?<\/p>\n<\/li>\n<li>\n<p>etc<\/p>\n<\/li>\n<\/ul>\n<\/li>\n<li>\n<p>The second thing we do is we look for patterns that should be replicated for you and across your teams. There are certain things you do really well replicate in those and other places.  Like TDD use.<\/p>\n<\/li>\n<li>\n<p>The third thing we do is we also find ways to speed you up. If there are certain things that you&#8217;re doing that could be optimized, both from a token perspective or a speed perspective, we highlight those as well.  For instance, I had an instance that auth&#8217;ed to the same service 4 times, killing 25 minutes.<\/p>\n<\/li>\n<li>\n<p>The fourth major thing we do is we actually just talk about how you use your tokens: where do they go, what MCPS\/etc are being used.<\/p>\n<\/li>\n<\/ol>\n<p>In addition to that, we also give stats on what code bases you work in the most, CI\/CD pass\/fails, abandoned work, github activity.    And we do this across all sessions for both Codex and Claude Code together.<\/p>\n<p>If you work with somebody else, we team level insights as well.<\/p>\n<p>Code quality is not a bad idea though!  We&#8217;ll add it to our backlog.  Thanks so much for the great question Ozan!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congratulations, <a href=\"https:\/\/www.producthunt.com\/@gogogadgetneil\" data-node-type=\"mention\" data-mention-type=\"user\" data-mention-id=\"gogogadgetneil\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@gogogadgetneil<\/a> and team. This is much needed &#8211; way more than many realize. My experience was similar to what Neil shared on the LinkedIn post about unseen changes made or even files read outside a project being worked on.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@gogogadgetneil\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@gogogadgetneil<\/a>&nbsp; <a href=\"https:\/\/www.producthunt.com\/@srinath_murthy\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@srinath_murthy<\/a>&nbsp;we couldn&#8217;t agree more! We hear this ad nauseam from everyone we talk to, and are so glad to help people meet this need. Would love to learn from you what connects most about the reports, and what work you&#8217;d love to see tackled next!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#4<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/HIDAJHE7G4FAB3\" class=\"app-title\">Screen Charm<\/a><\/p>\n<div class=\"one-liner\">Give your screen recordings more charm<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">280<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>Screen Charm \u662f\u4e00\u6b3e\u9488\u5bf9 macOS \u7684\u5c4f\u5e55\u5f55\u5236\u5de5\u5177\uff0c\u4e13\u4e3a\u9700\u8981\u5feb\u901f\u5236\u4f5c\u4e13\u4e1a\u7ea7\u4ea7\u54c1\u6f14\u793a\u3001\u6559\u7a0b\u548c\u7528\u6237\u5f15\u5bfc\u89c6\u9891\u7684\u7528\u6237\u8bbe\u8ba1\uff0c\u901a\u8fc7\u667a\u80fd\u7f29\u653e\u3001\u8fd0\u52a8\u6a21\u7cca\u548c\u5185\u7f6e\u7f16\u8f91\u5668\uff0c\u5c06\u539f\u59cb\u5f55\u5c4f\u4e00\u952e\u8f6c\u5316\u4e3a\u9ad8\u8d28\u611f\u89c6\u9891\uff0c\u89e3\u51b3\u4e86\u4f20\u7edf\u5de5\u5177\u64cd\u4f5c\u590d\u6742\u6216\u4ef7\u683c\u9ad8\u6602\u7684\u75db\u70b9\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/c2c359ad-9bdd-4313-b72a-fd3c48d33e72.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/f331a048-7aa8-466a-8fa3-fceba9daf309.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/1adc6ac9-49bb-486e-b8c6-ef97270b2b90.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/3d09d658-bdcd-4858-bcd1-db7efa96aeae.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/6cd004bf-18e9-4997-a401-d5e222e32729.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/e177c8c2-8937-4347-9c00-ef1b8aa5ce19.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Mac<\/span><br \/>\n            <span class=\"tag\">Productivity<\/span><br \/>\n            <span class=\"tag\">Video<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">\u5c4f\u5e55\u5f55\u5236<\/span><br \/>\n            <span class=\"tag\">\u89c6\u9891\u7f16\u8f91<\/span><br \/>\n            <span class=\"tag\">\u4ea7\u54c1\u6f14\u793a<\/span><br \/>\n            <span class=\"tag\">macOS<\/span><br \/>\n            <span class=\"tag\">\u4e00\u6b21\u6027\u4ed8\u8d39<\/span><br \/>\n            <span class=\"tag\">\u667a\u80fd\u7f29\u653e<\/span><br \/>\n            <span class=\"tag\">\u7f51\u7edc\u6444\u50cf\u5934\u53e0\u52a0<\/span><br \/>\n            <span class=\"tag\">\u80cc\u666f\u97f3\u4e50<\/span><br \/>\n            <span class=\"tag\">4K\u5bfc\u51fa<\/span><br \/>\n            <span class=\"tag\">\u4e13\u4e1a\u6559\u7a0b<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u666e\u904d\u8d5e\u8d4f\u5176\u754c\u9762\u7b80\u6d01\u3001\u4e00\u6b21\u6027\u4ed8\u8d39\u6a21\u5f0f\uff0c\u5e76\u8ba4\u53ef\u667a\u80fd\u7f29\u653e\u548c\u5e03\u5c40\u529f\u80fd\u3002\u4e3b\u8981\u95ee\u9898\u5305\u62ec\uff1a\u4e0eScreen Studio\u7684\u76f8\u4f3c\u6027\u5f15\u53d1\u8d28\u7591\uff1b\u7528\u6237\u5efa\u8bae\u589e\u52a0\u81ea\u52a8\u68c0\u6d4b\u654f\u611f\u5185\u5bb9\u5e76\u6a21\u7cca\u3001\u80cc\u666f\u66ff\u6362\u3001\u7cbe\u51c6\u88c1\u526a\u3001\u4ee5\u53ca\u8bb8\u53ef\u8bc1\u591a\u8bbe\u5907\u7ba1\u7406\u548c\u53bb\u6fc0\u6d3b\u529f\u80fd\u3002\u5f00\u53d1\u8005\u900f\u9732\u672a\u6765\u53ef\u80fd\u8f6c\u5411\u8ba2\u9605\u5236\u5f15\u53d1\u5173\u6ce8\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                Screen Charm \u8e29\u4e2d\u4e86\u5f53\u524d\u89c6\u9891\u8425\u9500\u65f6\u4ee3\u4e00\u4e2a\u7cbe\u51c6\u4e14\u8ba8\u5de7\u7684\u75db\u70b9\uff1a\u4eba\u4eba\u90fd\u9700\u8981\u505a\u6f14\u793a\u89c6\u9891\uff0c\u4f46\u5927\u90e8\u5206\u4eba\u4e0d\u60f3\u5b66 Final Cut Pro\uff0c\u4e5f\u4e0d\u60f3\u88ab\u6bcf\u6708\u51e0\u5341\u7f8e\u5143\u7684 SaaS \u8d39\u7ed1\u67b6\u3002\u5b83\u672c\u8d28\u4e0a\u662f\u4e00\u4e2a\u201c\u5f55\u5c4f\u7f8e\u5316\u7cbe\u7b80\u7248\u201d\u2014\u2014\u780d\u6389\u4e86\u81c3\u80bf\u7684\u591a\u8f68\u65f6\u95f4\u7ebf\uff0c\u4fdd\u7559\u4e86\u6700\u6838\u5fc3\u7684\u81ea\u52a8\u7f29\u653e\u548c\u89c6\u89c9\u6da6\u8272\uff0c\u8ba9\u4e00\u4e2a\u975e\u4e13\u4e1a\u4eba\u58eb\u5728\u5341\u5206\u949f\u5185\u4ea7\u51fa\u201c\u770b\u8d77\u6765\u50cf\u90a3\u4e48\u56de\u4e8b\u201d\u7684 demo\u3002\u5176\u201c\u4e00\u6b21\u4ed8\u8d39\u201d\u6a21\u5f0f\u5728\u5f53\u524d\u73af\u5883\u4e0b\u6781\u5177\u6740\u4f24\u529b\uff0c\u76f4\u63a5\u51fb\u7a7f\u4e86\u7ade\u54c1\uff08\u5982 Screen Studio\uff09\u7684\u9ad8\u9891\u8ba2\u9605\u58c1\u5792\uff0c\u8fd9\u4e5f\u662f\u5b83\u83b7\u5f97\u793e\u533a\u597d\u611f\u7684\u6838\u5fc3\u539f\u56e0\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u7136\u800c\uff0c\u8fd9\u6b3e\u4ea7\u54c1\u9762\u4e34\u4e24\u5927\u9690\u5fe7\uff1a\u7b2c\u4e00\uff0c\u529f\u80fd\u62a4\u57ce\u6cb3\u6781\u7a84\u3002\u667a\u80fd\u7f29\u653e\u3001\u6a21\u7cca\u3001\u6444\u50cf\u5934\u53e0\u52a0\u7b49\u7279\u6027\u867d\u6709\u5438\u5f15\u529b\uff0c\u4f46\u6280\u672f\u95e8\u69db\u4e0d\u9ad8\uff0c\u6781\u6613\u88ab Loom\u3001OBS \u642d\u914d\u63d2\u4ef6\u6216\u540c\u8d28\u5316\u4ea7\u54c1\u6a21\u4eff\u66ff\u4ee3\u3002\u5f53\u7ade\u4e89\u5bf9\u624b\u4e5f\u63a8\u51fa\u7c7b\u4f3c\u201c\u4e00\u952e\u667a\u80fd\u7f29\u653e\u201d\u65f6\uff0cScreen Charm \u7684\u5dee\u5f02\u5316\u5c06\u5feb\u901f\u6d88\u5931\u3002\u7b2c\u4e8c\uff0c\u5f00\u53d1\u8005\u7684\u8def\u7ebf\u56fe\u81ea\u76f8\u77db\u76fe\u3002\u4ed6\u5728\u8bc4\u8bba\u4e2d\u4e00\u65b9\u9762\u5f3a\u8c03\u201c\u76ee\u524d\u4e0d\u9700\u8981\u8ba2\u9605\u201d\uff0c\u53e6\u4e00\u65b9\u9762\u53c8\u660e\u786e\u8868\u793a\u201c\u6709\u8ba1\u5212\u5411\u8ba2\u9605\u5236\u8f6c\u6362\u201d\u3002\u8fd9\u4f1a\u8ba9\u6838\u5fc3\u7684\u201c\u4e00\u6b21\u8d2d\u4e70\u201d\u7528\u6237\u4ea7\u751f\u5f3a\u70c8\u4e0d\u4fe1\u4efb\u611f\u2014\u2014\u6211\u4eca\u5929\u4e70\u7684\u201c\u6c38\u4e45\u4f7f\u7528\u6743\u201d\uff0c\u662f\u5426\u4f1a\u5728\u672a\u6765\u88ab\u9609\u5272\u529f\u80fd\u6216\u505c\u6b62\u66f4\u65b0\uff1f\u8fd9\u79cd\u6a21\u7cca\u6001\u5ea6\u662f\u5546\u4e1a\u4e0a\u7684\u81f4\u547d\u4f24\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u4ea7\u54c1\u672c\u8eab\u4e0d\u9519\uff0c\u4f46\u6838\u5fc3\u95ee\u9898\u4e0d\u5728\u6280\u672f\uff0c\u800c\u5728\u5546\u4e1a\u6a21\u5f0f\u548c\u957f\u671f\u4ef7\u503c\u3002\u5982\u679cScreen Charm\u60f3\u771f\u6b63\u7acb\u8db3\uff0c\u8981\u4e48\u5728\u7279\u6548\u548cAI\u81ea\u52a8\u5316\u4e0a\uff08\u5982\u667a\u80fd\u68c0\u6d4b\u654f\u611f\u4fe1\u606f\u3001\u81ea\u52a8\u751f\u6210\u5b57\u5e55\/\u7ae0\u8282\uff09\u6784\u5efa\u65e0\u6cd5\u8f7b\u6613\u590d\u5236\u7684\u6df1\u5899\uff0c\u8981\u4e48\u8001\u8001\u5b9e\u5b9e\u575a\u6301\u4e00\u6b21\u4ed8\u8d39\u5e76\u5efa\u7acb\u5f3a\u5927\u7684\u672c\u5730\u5316\u66f4\u65b0\u53e3\u7891\u3002\u5426\u5219\uff0c\u5b83\u5f88\u53ef\u80fd\u6210\u4e3a\u53c8\u4e00\u4e2a\u201c\u53eb\u597d\u4e0d\u53eb\u5ea7\u201d\u7684\u6619\u82b1\u4ea7\u54c1\uff0c\u6700\u7ec8\u88ab\u5de8\u5934\u4eec\u987a\u624b\u6284\u8d70\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">Screen Charm<\/span>\n                <\/div>\n<div class=\"comment-content\">Record your screen and instantly turn raw footage into polished, presentation-ready videos with smart zoom effects, smooth motion blur, webcam overlay, background music, and a built-in editor. No complex editing tools. No subscriptions. Just clean, high-quality demos in minutes. Export in up to 4K and share videos that actually feel professional whether you&#8217;re showcasing a product, onboarding users, or recording tutorials. One-time purchase. No subscription. Just ScreenCharm.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Hello Hunters \ud83d\udc4b<\/p>\n<\/p>\n<p>My name is Sergei, a solo founder. Before launching Screen Charm, I wanted to create a high-quality product demo for one of my previous projects, but the available tools were either too expensive or didn\u2019t deliver the quality I needed.<\/p>\n<\/p>\n<p>That\u2019s why I started building Screen Charm \u2014 a screen recording app for macOS focused on creating beautiful product demos.<\/p>\n<\/p>\n<p>What started as a small side project turned into something I worked on for over a year, alongside my full-time job as a software engineer. Progress was slow at times, but I kept refining it whenever I could.<\/p>\n<\/p>\n<p>Although Screen Charm was originally launched more than a year ago, I only recently found the time as a solo founder to properly bring it to Product Hunt.<\/p>\n<\/p>\n<p>I\u2019d really appreciate your feedback and support \ud83d\ude4c<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>16<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@sergei_nazarov92\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@sergei_nazarov92<\/a>  Great work Sergei!<\/p>\n<p>I like the interface. It&#8217;s clean and modern. I have a couple of ideas you can implement.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@sergei_nazarov92\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@sergei_nazarov92<\/a>&nbsp;Hey Sergei! Congrats on finally getting Screen Charm onto PH. As a Mac user who values clean, efficient workflows, I know how hard it is to find recording tools that don&#8217;t feel &#8216;clunky.&#8217; Love that you built this to solve your own need for high-quality demos.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@sergei_nazarov92\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@sergei_nazarov92<\/a>&nbsp;Congrats Sergei! A year of building this alongside a full time job is no joke, really glad you kept going and finally got it to launch.<\/p>\n<\/p>\n<p>If you ever want to get your demos in front of a live audience, check out <a href=\"https:\/\/www.producthunt.com\/products\/simulive\" data-node-type=\"mention\" data-mention-type=\"product\" data-mention-id=\"simulive\" target=\"_blank\" rel=\"noopener\">@SimuLive<\/a>, it helps keep people engaged through webinars and meetings. Best of luck today! \ud83d\ude4c<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Amazing product\ud83d\udd25, especially the vertical layouts are very cool, most screen recorders don&#8217;t have that<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@farid_sukurov\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@farid_sukurov<\/a>&nbsp;Thank you Farid! one of my differentiators from the competitors. I want to move more into the area of cool camera recording layouts instead of focusing on more polished screen recording<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>congrats on the launch!!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@a_6\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@a_6<\/a>&nbsp;thank you Anna! <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Really like that this focuses on making recordings presentable without opening a full video editor. Perfect for quick demos where the details still need to look clean.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@farrukh_butt1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@farrukh_butt1<\/a>&nbsp;Thank you for the kind words Farrukh! This is our main target to make creation of professional screen recording easier<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Keep it up \ud83d\udcaa\ud83c\udffb<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@rodrigo_rocco\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@rodrigo_rocco<\/a>&nbsp;I will Rodrigo!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Is this not screen studio? I already paid for that.<br \/>Congrats on launch!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@thinkharshh\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@thinkharshh<\/a>&nbsp;Hey! Nope, it&#8217;s not screen studio. Thank you!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">@sergei_nazarov92 it looks like screen studio except subscription part \ud83d\ude42 Congrats on the launch.<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Oh, is there a MacBook version? Some of these tools only work on Windows, and I&#8217;m fully invested in the Apple ecosystem!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@mayarossi\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@mayarossi<\/a>&nbsp;Hey! It works only on Mac. No windows version for now<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>No-subscription is the part I keep saying loudly. Recording tools are like fonts: I might use one weekly and the monthly bill makes no sense. One payment + the smart zoom on click looks like the right baseline feature for builder demos. Following.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@david_marko\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@david_marko<\/a>&nbsp;Thanks a lot! Yes, currently there is no need for subscription. But I have plans of switching the pricing model to subscription based. Don&#8217;t know yet when will it happen tbh<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This looks useful. Does it auto-detect when to zoom based on cursor activity?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@dhiraj_patel5\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@dhiraj_patel5<\/a>&nbsp;Hey! Yes, it works exactly like this. We track the cursor movement and event. Then transform them into smooth zoom effects<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Wow, Serge! It looks awesome. Needing to create demo videos so feel I can take the most of it. How about the pricing?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@german_merlo1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@german_merlo1<\/a>&nbsp;Hey! Thank you! Currently the pricing is a lifetime deal for $79, but there is a promo code for 30% off<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Must have for builders &amp; marketers! thanks for this great tool Sergei \ud83d\ude4c<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@frboulais\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@frboulais<\/a>&nbsp;you&#8217;re welcome! it&#8217;s only the pleasure to build such tool, i don&#8217;t feel tired at all. the only only problem is million of edge cases <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Convenient tool, easy to work with, love all the zoom and background effects, paddings. <br \/>One-time payment is rare these days, so extra great. <br \/>Thanks for your work and have a good launch \ud83d\ude42 <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@maryna_klokova\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@maryna_klokova<\/a>&nbsp;Hey Marina! It&#8217;s music to my ears to hear that \ud83d\ude42 More features are coming soon!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Love the app and the fact that you can use it all you like (no recurring sub), truly a rare commodity these days.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@bojan_sala\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@bojan_sala<\/a>&nbsp;yeah thank you! I started building it because I could sell lifetime deals and easily validate that I can get users. The price started from $29 when I just launched it. Since then I was steadily increasing it. Probably next year I will switch to subscriptions<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The line about existing tools being too expensive or not good enough hit home. I went through the same thing recording demos last year and ended up duct-taping three apps together.<\/p>\n<p>Two things I&#8217;m curious about. First, the gap you mentioned: it shipped a year ago but you&#8217;re only now on PH. I&#8217;d love to hear what changed your mind about launching here. Second, for &#8220;beautiful demos,&#8221; which detail did you sweat the most? Cursor smoothing, auto-zoom, the backgrounds? That&#8217;s usually where a demo stops looking like a plain screen grab.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>I like this product. I would like to request some features: automatically detect and blur confidential or sensitive content within videos, provide options to either remove the background entirely or apply a blur effect during camera recording, enable precise cropping of recorded video during the editing process. Alongside the lifetime license I have purchased, I would like to add a feature that allows me to deactivate the license on a specific device. This would enable me to later activate it on another device if the maximum limit of three devices is exceeded.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The auto-zoom on cursor activity is the feature I&#8217;d actually use. Manually keyframing zooms is the worst part of cutting app demo videos for me. Can you tweak the zoom targets after it auto-detects, or is it fully automatic?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Smart zoom + motion blur + webcam overlay baked in is exactly the polish I usually skip because the editing tax is too high. As an indie dev cutting demo clips, the one-time, no-subscription model is a real selling point. Does the background music come from a built-in library, or can I drop in my own track?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Sergei, the gap you identified is so real  most screen recording tools give you raw footage and then expect you to know what to do with it. The smart zoom + webcam overlay combination is a clever way to make demos feel more human without needing a full editing workflow. Are you planning to add any AI-generated voiceover or caption features, or keeping it focused on visual polish?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#5<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/63A6YZZ2WCUVFU\" class=\"app-title\">Gemini 3.5 Live Translate<\/a><\/p>\n<div class=\"one-liner\">Latest audio model for live speech-to-speech translation<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">217<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>Gemini 3.5 Live Translate \u5c06\u8c37\u6b4c\u6700\u65b0\u97f3\u9891\u6a21\u578b\u5d4c\u5165 AI Studio\u3001\u7ffb\u8bd1\u548c Meet\uff0c\u5b9e\u73b0\u8fd1\u4e4e\u5b9e\u65f6\u7684\u8bed\u97f3\u5230\u8bed\u97f3\u7ffb\u8bd1\uff0c\u89e3\u51b3\u8de8\u8bed\u8a00\u6c9f\u901a\u4e2d\u9700\u8981\u4eba\u5de5\u6216\u6587\u5b57\u4e2d\u8f6c\u7684\u6548\u7387\u75db\u70b9\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/030714c7-401e-48fd-9258-1ddd0bde5d61.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <video class=\"media-content\" poster=\"https:\/\/ph-files.imgix.net\/d3b6b43b-af95-4c32-9d20-1a3729006cc4.jpeg?auto=format\" data-video-url=\"https:\/\/www.youtube.com\/watch?v=16Y2DU6LJX4\"><source src=\"https:\/\/www.youtube.com\/watch?v=16Y2DU6LJX4\" type=\"video\/mp4\"><\/video><\/p>\n<div class=\"video-overlay\">\n<div class=\"play-icon\">\u25b6<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"media-item-wrapper\">\n                <video class=\"media-content\" poster=\"https:\/\/ph-files.imgix.net\/0274c059-4971-43ad-9021-c21d68220ec9.jpeg?auto=format\" data-video-url=\"https:\/\/www.youtube.com\/watch?v=DLSLKCqahyI\"><source src=\"https:\/\/www.youtube.com\/watch?v=DLSLKCqahyI\" type=\"video\/mp4\"><\/video><\/p>\n<div class=\"video-overlay\">\n<div class=\"play-icon\">\u25b6<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Android<\/span><br \/>\n            <span class=\"tag\">Languages<\/span><br \/>\n            <span class=\"tag\">Audio<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">\u8bed\u97f3\u7ffb\u8bd1<\/span><br \/>\n            <span class=\"tag\">\u5b9e\u65f6\u7ffb\u8bd1<\/span><br \/>\n            <span class=\"tag\">AI\u97f3\u9891\u6a21\u578b<\/span><br \/>\n            <span class=\"tag\">Google Meet<\/span><br \/>\n            <span class=\"tag\">\u591a\u8bed\u8a00\u4f1a\u8bae<\/span><br \/>\n            <span class=\"tag\">\u540c\u58f0\u4f20\u8bd1<\/span><br \/>\n            <span class=\"tag\">\u81ea\u7136\u8bed\u97f3<\/span><br \/>\n            <span class=\"tag\">\u8fb9\u7f18\u573a\u666f<\/span><br \/>\n            <span class=\"tag\">\u96f6\u914d\u7f6e<\/span><br \/>\n            <span class=\"tag\">\u8c37\u6b4cAI Studio<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u5173\u6ce8\uff1a1\uff09\u5bf9\u91cd\u53e3\u97f3\u548c\u975e\u6807\u51c6\u53d1\u97f3\u7684\u5904\u7406\u80fd\u529b\uff1b2\uff09Google Meet \u662f\u5426\u5bf9\u6240\u6709\u4eba\u5f00\u653e\uff1b3\uff09\u5ef6\u8fdf\u4e0e\u8de8\u8bed\u8a00\u51c6\u786e\u5ea6\u7b49\u57fa\u51c6\u6570\u636e\u3002\u6709\u7528\u6237\u8ba4\u4e3a\u96f6\u914d\u7f6e\u7684\u5b9e\u65f6\u7ffb\u8bd1\u5bf9\u5b66\u6821\u5bb6\u6821\u6c9f\u901a\u4ef7\u503c\u663e\u8457\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                Gemini 3.5 Live Translate \u7684\u6280\u672f\u5e95\u724c\u786e\u5b9e\u8bf1\u4eba\u2014\u2014\u57fa\u4e8e\u6700\u65b0\u97f3\u9891\u6a21\u578b\u7684\u7aef\u5230\u7aef\u8bed\u97f3\u8f6c\u8bed\u97f3\uff0c\u7406\u8bba\u4e0a\u6bd4\u4f20\u7edf\u7684\u300cASR-\u7ffb\u8bd1-TTS\u300d\u6d41\u6c34\u7ebf\u5728\u6d41\u7545\u5ea6\u548c\u81ea\u7136\u5ea6\u4e0a\u66f4\u6709\u4f18\u52bf\u3002\u4f46\u95ee\u9898\u5728\u4e8e\uff0c217\u7968\u5728 Product Hunt \u4e0a\u53ea\u80fd\u7b97\u4e2d\u89c4\u4e2d\u77e9\uff0c\u4e14\u7528\u6237\u8bc4\u8bba\u51e0\u4e4e\u90fd\u5728\u8ffd\u95ee\u300c\u8fb9\u754c\u60c5\u51b5\u300d\u548c\u300c\u53ef\u7528\u8303\u56f4\u300d\uff0c\u8fd9\u66b4\u9732\u4e86\u4ea7\u54c1\u7684\u5c34\u5c2c\u70b9\uff1a\u6f14\u793a\u573a\u666f\u4e0b\u5f88\u9177\uff0c\u4f46\u5b9e\u9645\u843d\u5730\u9700\u8981\u9762\u5bf9\u53e3\u97f3\u3001\u8bed\u901f\u3001\u6df7\u6742\u566a\u97f3\u548c\u957f\u5c3e\u8bed\u8a00\u7b49\u73b0\u5b9eBugs\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u4ece\u6218\u7565\u770b\uff0c\u8c37\u6b4c\u8bd5\u56fe\u628a AI Studio \u4f5c\u4e3a\u65b0\u80fd\u529b\u5b75\u5316\u5668\uff0c\u518d\u53cd\u54fa\u7ed9 Meet \u548c Translate \u8fd9\u6837\u7684\u6210\u719f\u4ea7\u54c1\u3002\u4f46\u5173\u952e\u662f Meet \u7684\u5f00\u653e\u7a0b\u5ea6\u2014\u2014\u76ee\u524d\u8bed\u7109\u4e0d\u8be6\uff0c\u82e5\u4ec5\u9650\u4f01\u4e1a\u7248\u6216\u7279\u5b9a\u5730\u533a\uff0c\u5219\u53c8\u662f\u4e00\u6b21\u300c\u6280\u672f\u8d85\u524d\uff0c\u4f53\u9a8c\u5272\u88c2\u300d\u7684\u7ecf\u5178\u64cd\u4f5c\u3002\u5bf9\u5b66\u6821\u5bb6\u957f\u4f1a\u8fd9\u7c7b\u4f4e\u9891\u4f46\u521a\u9700\u573a\u666f\uff0c\u96f6\u914d\u7f6e\u786e\u5b9e\u662f\u6740\u624b\u950f\uff0c\u53ef\u82e5\u5ef6\u8fdf\u505a\u4e0d\u5230200ms\u4ee5\u5185\u3001\u51c6\u786e\u7387\u8fbe\u4e0d\u523095%\u4ee5\u4e0a\uff0c\u7528\u6237\u5f88\u53ef\u80fd\u53ea\u4f1a\u5728\u5c1d\u9c9c\u540e\u56de\u5230\u300c\u4eba\u7c7b\u7ffb\u8bd1+\u5b57\u5e55\u300d\u7684\u8001\u8def\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u603b\u7ed3\uff1a\u6280\u672f\u65b9\u5411\u6b63\u786e\uff0c\u4f46\u8c37\u6b4c\u9700\u8981\u56de\u7b54\u4e24\u4e2a\u5c16\u9510\u95ee\u9898\u2014\u2014\u5b83\u80fd\u5426\u5728\u5608\u6742\u4f1a\u8bae\u5ba4\u91cc\u7a33\u5b9a\u5de5\u4f5c\uff1f\u4ee5\u53ca\uff0c\u5b83\u5230\u5e95\u4ec0\u4e48\u65f6\u5019\u80fd\u51fa\u73b0\u5728\u666e\u901a\u7528\u6237\u7684 Google Meet \u6309\u94ae\u91cc\uff1f\u5426\u5219\uff0c\u4e0d\u8fc7\u662f\u53c8\u4e00\u4e2a\u79d1\u6280Demo\u5f0f\u7684\u6a71\u7a97\u5c55\u793a\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">Gemini 3.5 Live Translate<\/span>\n                <\/div>\n<div class=\"comment-content\">Gemini 3.5 Live Translate brings near real-time, natural speech translation to Google AI Studio, Google Translate and Google Meet.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>If Gemini 3.5 handles those edge cases well, it changes what&#8217;s possible for multilingual meetings. How does the system handle speakers with heavy accents or non-native pronunciation patterns?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>looks great, will it be in Google Meets for everybody? or&#8230;<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Any benchmarks to share? Like what is the latency, accuracy across different languages, etc.?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Live translation in Google Meet with zero setup is what really matters for schools. Parent\u2013teacher calls across language barriers usually needed a third person in the room &#8211; now not anymore.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#6<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/BVZIMZTBT2CLGG\" class=\"app-title\">iArt.ai<\/a><\/p>\n<div class=\"one-liner\">Turn ideas &#038; designs into stunning video\/animation.<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">191<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>iArt.ai \u662f\u4e00\u6b3e\u804a\u5929\u9a71\u52a8\u7684AI\u89c6\u9891\u751f\u6210\u5de5\u5177\uff0c\u5e2e\u52a9\u7f3a\u4e4f\u4e13\u4e1a\u526a\u8f91\u6280\u80fd\u7684\u7528\u6237\u5feb\u901f\u5236\u4f5c\u5ba3\u4f20\u7247\u3001\u77ed\u89c6\u9891\u3001\u8fd0\u52a8\u56fe\u5f62\u7b49\u89c6\u9891\u5185\u5bb9\uff0c\u65e0\u9700\u5b66\u4e60\u4f20\u7edf\u8f6f\u4ef6\uff08\u5982AE\/PR\/CapCut\uff09\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/d2420746-a4a6-4a6b-aad6-797157aa49a6.jpeg?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/0c19caa3-c754-4748-a1a4-8f50c95a277b.jpeg?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/65a4db09-4e49-4295-9071-b10335a08564.jpeg?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/560233ee-5859-499c-9c2e-19afd64e64e4.jpeg?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <video class=\"media-content\" poster=\"https:\/\/ph-files.imgix.net\/010060c4-9f13-47dc-aabd-e89183c7f5d0.jpeg?auto=format\" data-video-url=\"https:\/\/youtu.be\/nZX8dS71ptw\"><source src=\"https:\/\/youtu.be\/nZX8dS71ptw\" type=\"video\/mp4\"><\/video><\/p>\n<div class=\"video-overlay\">\n<div class=\"play-icon\">\u25b6<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Productivity<\/span><br \/>\n            <span class=\"tag\">Artificial Intelligence<\/span><br \/>\n            <span class=\"tag\">Video<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">AI\u89c6\u9891\u751f\u6210<\/span><br \/>\n            <span class=\"tag\">\u8fd0\u52a8\u56fe\u5f62<\/span><br \/>\n            <span class=\"tag\">\u804a\u5929\u9a71\u52a8<\/span><br \/>\n            <span class=\"tag\">\u54c1\u724c\u4e00\u81f4\u6027<\/span><br \/>\n            <span class=\"tag\">\u6279\u91cf\u6e32\u67d3<\/span><br \/>\n            <span class=\"tag\">\u8bed\u97f3\u89e3\u8bf4<\/span><br \/>\n            <span class=\"tag\">\u65e0\u9700\u526a\u8f91<\/span><br \/>\n            <span class=\"tag\">\u5feb\u901f\u539f\u578b<\/span><br \/>\n            <span class=\"tag\">\u89c6\u9891\u4ee3\u7406<\/span><br \/>\n            <span class=\"tag\">\u4ea7\u54c1\u6f14\u793a<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u4e3b\u8981\u5173\u5fc3AI\u80fd\u5426\u7cbe\u786e\u6267\u884c\u590d\u6742\u6307\u4ee4\u3001\u4fdd\u6301\u54c1\u724c\u98ce\u683c\u4e00\u81f4\u6027\u3001\u7406\u89e3\u62bd\u8c61\u521b\u610f\u63cf\u8ff0\u3002\u56de\u590d\u5f3a\u8c03\u53ef\u901a\u8fc7\u8be6\u7ec6\u63d0\u793a\u8bcd\u548c\u54c1\u724c\u9762\u677f\u63a7\u5236\u8f93\u51fa\uff0c\u5e76\u652f\u6301\u591a\u79cd\u8f93\u5165\u683c\u5f0f\uff08\u6587\u672c\u3001\u56fe\u7247\u3001\u97f3\u9891\uff09\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                iArt.ai\u7684\u5b9a\u4f4d\u975e\u5e38\u6e05\u6670\u2014\u2014\u7528\u201c\u804a\u5929\u201d\u8fd9\u628a\u9524\u5b50\uff0c\u6572\u788e\u4f20\u7edf\u89c6\u9891\u7f16\u8f91\u8f6f\u4ef6\u7684\u9ad8\u5899\u3002\u5b83\u9488\u5bf9\u7684\u75db\u70b9\u662f\u201c\u521b\u610f\u4e0e\u6267\u884c\u4e4b\u95f4\u7684\u9e3f\u6c9f\u201d\uff0c\u6838\u5fc3\u5356\u70b9\u662f\u201c\u628a\u521b\u610f\u63cf\u8ff0\u76f4\u63a5\u53d8\u6210\u6210\u54c1\u201d\uff0c\u800c\u975e\u63d0\u4f9b\u53e6\u4e00\u4e2a\u9700\u8981\u5b66\u4e60\u7684\u5de5\u5177\u3002\u4ece\u7528\u6237\u8bc4\u8bba\u770b\uff0c\u56e2\u961f\u5bf9\u81ea\u8eab\u80fd\u529b\u7684\u8fb9\u754c\u6709\u6bd4\u8f83\u6e05\u9192\u7684\u8ba4\u77e5\uff1a\u627f\u8ba4\u5b8c\u5168\u63d0\u793a\u9a71\u52a8\u9700\u8981\u4e00\u4e2a\u4e60\u60ef\u8f6c\u53d8\u7684\u8fc7\u7a0b\uff0c\u4e5f\u5766\u8bda\u5728\u67d0\u4e9b\u8fb9\u7f18\u7ec6\u8282\u4e0a\u53ef\u80fd\u4e0d\u591f\u5b8c\u7f8e\uff0c\u5e76\u63d0\u4f9b\u4e86\u201c\u589e\u5f3a\u63d0\u793a\u201d\u548c\u201c\u5206\u8282\u8f93\u5165\u201d\u7b49\u5177\u4f53\u89e3\u51b3\u65b9\u6848\u3002\u8fd9\u79cd\u52a1\u5b9e\u7684\u6c9f\u901a\u6bd4\u7a7a\u6d1e\u7684\u201c\u78be\u538bAE\u201d\u7684\u8425\u9500\u66f4\u53ef\u4fe1\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u7136\u800c\uff0c\u4ea7\u54c1\u6700\u5927\u7684\u6311\u6218\u5728\u4e8e\u201c\u53ef\u63a7\u6027\u201d\u3002\u4e13\u4e1a\u7528\u6237\uff08\u5982\u8bc4\u8bba\u4e2d\u63d0\u5230\u7684\u97f3\u4e50\u5236\u4f5c\u4eba\uff09\u5173\u5fc3\u7684\u7ec6\u8282\u2014\u2014\u8282\u594f\u3001\u8f6c\u573a\u3001\u97f3\u9891\u7cbe\u786e\u540c\u6b65\u2014\u2014\u5e76\u975e\u7b80\u5355\u804a\u51e0\u53e5\u5929\u5c31\u80fd\u5b8c\u7f8e\u89e3\u51b3\u3002\u5f53\u524d\u4ea7\u54c1\u66f4\u9002\u5408\u201c\u5feb\u6d88\u5f0f\u201d\u5185\u5bb9\uff08\u793e\u5a92\u77ed\u7247\u3001\u5feb\u901f\u539f\u578b\uff09\uff0c\u5728\u4e25\u8083\u7684B2B\u6216\u54c1\u724c\u7ea7\u9879\u76ee\u4e2d\uff0cAI\u7684\u201c\u81ea\u7531\u53d1\u6325\u201d\u53ef\u80fd\u662f\u81f4\u547d\u4f24\u3002\u5176\u201c\u54c1\u724c\u4e00\u81f4\u6027\u201d\u529f\u80fd\u770b\u4f3c\u89e3\u51b3\u4e86\u75db\u70b9\uff0c\u4f46\u672c\u8d28\u4e0a\u4ecd\u4f9d\u8d56\u9884\u5148\u5b9a\u4e49\u597d\u7684\u89c4\u5219\uff0c\u5bf9\u4e8e\u771f\u6b63\u7cbe\u7ec6\u7684\u521b\u610f\u628a\u63a7\u53ef\u80fd\u529b\u6709\u4e0d\u902e\u3002\u5982\u679ciArt.ai\u80fd\u6301\u7eed\u4f18\u5316\u6a21\u578b\u5bf9\u62bd\u8c61\u6307\u4ee4\u7684\u201c\u7406\u89e3\u529b\u201d\u800c\u975e\u201c\u521b\u9020\u529b\u201d\uff0c\u5e76\u5f3a\u5316\u201c\u4fee\u6539\u201d\u800c\u975e\u201c\u91cd\u5efa\u201d\u7684\u8fed\u4ee3\u6548\u7387\uff0c\u5b83\u6216\u8bb8\u771f\u80fd\u6210\u4e3a\u89c6\u9891\u521b\u610f\u5de5\u4f5c\u6d41\u4e2d\u90a3\u4e2a\u5173\u952e\u7684\u201c\u7b2c\u4e00\u7a3f\u751f\u6210\u5668\u201d\u3002\u4f46\u8981\u8bf4\u201c\u5b8c\u5168\u66ff\u4ee3AE\/PR\u201d\uff0c\u76ee\u524d\u66f4\u50cf\u662f\u4e00\u4e2a\u5927\u80c6\u7684\u613f\u666f\u5ba3\u8a00\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">iArt.ai<\/span>\n                <\/div>\n<div class=\"comment-content\">A faster agent delivers promos\/shorts, explainers, kinetic type and PRO motion graphics with audio. Ditch AE\/PR\/CapCut. Chat to refine and ship impact.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Hi Product Hunt! \ud83d\udc4bI\u2019m Yunfei, the founder of PageOn. Happy to be back with our new tool: iArt.<\/p>\n<p>Creating high-quality videos shouldn&#8217;t require rendering queues or specialized training. We&#8217;ve spent months crafting iArt as a web-based, chat-driven video agent to change that: <\/p>\n<p>\ud83c\udfac <strong>No Timelines<\/strong>: Ditch complex editors. Tell the agent what to change, and it rebuilds scenes, typography, and timing. <\/p>\n<p>\ud83c\udfa7 <strong>Voiceover &amp; BGM<\/strong>: Generate synchronized narration and bgm during the initial one-click creation.<\/p>\n<p> \ud83d\udce6 <strong>Batch Render<\/strong>: Generate an entire video series at once with a single prompt. <\/p>\n<p>\ud83c\udfa8 <strong>Brand Consistency<\/strong>: Mention your assets in chat to keep every output natively on-brand. <\/p>\n<p>\u2728 <strong>AI Gen &amp; Web Search<\/strong>: Toggle switches to let the agent auto-generate imagery or pull real-time web visuals.  <\/p>\n<\/p>\n<p><strong>A quick heads-up:<\/strong> Since iArt is entirely prompt-driven, we replaced the manual canvas with simple chat. While it takes a brief shift in habits, it completely removes the pain of pixel-pushing. <\/p>\n<\/p>\n<p> We are launching today to see how our agent performs in your daily workflows. We desperately want your brutal feedback to help us improve. What video are you making next? Let&#8217;s see if iArt can solve it! \ud83d\ude80<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>5<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Visualizing complex software architectures for B2B explainers is a nightmare. Can I upload a raw outline and ask iArt to generate an animated breakdown?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@song_kirby\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@song_kirby<\/a>&nbsp;That\u2019s exactly why we built iArt to be a fully multi-modal platform. You can feed your raw outlines to the AI in whatever format you have on hand:<\/p>\n<p>&#8211; Text &amp; Data: Paste directly into the chat or upload files (.txt, .md, .pdf up to 10MB; .json, .csv up to 2MB).<\/p>\n<p>&#8211; Visual Sketches: Upload up to 6 images (.png, .jpg, .jpeg up to 10MB each) if you have raw whiteboard mockups or architecture diagrams.<\/p>\n<p>&#8211; Voice Outlines: Upload up to 10 audio clips (.mp3, .wav, .m4a up to 30MB each) if you prefer just talking through the logic.<\/p>\n<p>iArt will parse the underlying logic and automatically map it into a clean, cinematic animated breakdown. Give it a spin on your toughest project\u2014we&#8217;d love to see what you create!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Can you lock brand fonts and colors so every export stays on style?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@thamibenjelloun\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@thamibenjelloun<\/a>   yes\uff0c you can try the brand function .  or  strict prompt . <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Dope!<br \/>If I write a highly detailed, scene-by-scene prompt, does the agent actually follow all the instructions, or does it tend to simplify things to fit standard structures?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@alstonzhuang\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@alstonzhuang<\/a>&nbsp;Thanks! It\u2019s a great question, and to give you an honest technical answer: our Agent is designed to follow complex, detailed instructions, and in the vast majority of cases, it sticks strictly to the details you provide. In fact, the richer and more specific your prompt is, the better the final cinematic output will be.<\/p>\n<p>However, because multi-scene long prompts can sometimes cause the AI to occasionally skip an edge-case detail, here is an insider pro-tip to make the Agent execute your scene-by-scene script flawlessly:<\/p>\n<p>Structure your input with clear sections, such as:<\/p>\n<p>&#8211; Duration (e.g., scene lengths)<\/p>\n<p>&#8211; Global Rules (e.g., visual style, tone)<\/p>\n<p>&#8211; Visuals + Script (the exact scene-by-scene action)<\/p>\n<p>&#8211; Voiceover \/ Dialogue Lines (you can even specify the pacing here\u2014just remember to select your preferred voice from our list first!)<\/p>\n<p>When formatted this way, the Agent handles the complexity beautifully without trying to simplify your creative vision. <br \/><strong>\ud83d\udca1 Here\u2019s the shortcut:<\/strong> If you don&#8217;t want to format all of this manually, you&#8217;ll love the <strong>&#8220;Enhance prompt&#8221; magic wand button<\/strong> right next to the enter key in our chat bar.<\/p>\n<p>We\u2019d love for you to drop your most detailed script in and push our Agent to its limits!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Cool stuff!<\/p>\n<p>Does the interface keep a chat history log? It\u2019d be great to be able to jump back to an earlier version if a subsequent prompt goes off the rails, given I often have to command Z a bunch of times.. \ud83d\ude42<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@yulesenmiao\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@yulesenmiao<\/a>&nbsp;Thanks for the love! \ud83d\ude4c You\u2019re going to love this: our tool inherently keeps your project status and history intact. No matter when you re-open a project, you&#8217;ll always see the exact full chat history right where you left off. You can freely experiment without losing your train of thought.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>AI video often has a very generic, over-stylized AI look. How does iArt ensure the motion graphics look clean, flat, and custom-branded?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@charlenechen_123\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@charlenechen_123<\/a>&nbsp;Hi Charlene! This is such a key pain point \u2014 generic \u201cAI look\u201d is exactly what we built iArt to avoid \ud83d\ude4c<\/p>\n<p>From your side, the workflow is designed to keep brand consistency front and center. Before you prompt, just head to the Brand panel and select the specific brand profile you\u2019ve already set up \u2014 this tells the agent to prioritize your logo, colors, and fonts from the start. When writing your prompt, feel free to ramble or be as messy as you want; the \u201cEnhance Prompt\u201d magic wand right next to the chat bar will refine your request, giving the agent the full context it needs to stay on-brand.<\/p>\n<p>On the technical side, our model is trained to prioritize your selected brand guidelines over generic stylization. It uses layout-preserving motion logic to keep graphics clean and flat, while dynamically weaving in your brand assets instead of applying one-size-fits-all filters. This way, the output feels uniquely yours, not just another AI-generated clip.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>If I tell the agent something highly abstract like &#8220;make the transition more kinetic but keep the overall style corporate,&#8221; how well does it interpret that nuance without messing up the layout?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@frey_loong\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@frey_loong<\/a>&nbsp;Hey Frey! Great question \ud83d\ude4c<\/p>\n<p>Our agent is built to balance creative direction with layout integrity. It interprets abstract prompts by referencing your selected brand profile and existing video style, so it can add kinetic energy without straying from your corporate look or messing up the layout.<\/p>\n<p>If you\u2019re struggling to put your ideas into words, feel free to put the AI to work overtime \ud83d\ude06 and ask it to create several design concepts for you to choose from. This is a fun way to align on design directions and lock the elements you don\u2019t want changed before moving on. <br \/>The latest prompt you sent can be interrupted or retracted at any time, so you can tweak your ideas freely. If the result still isn\u2019t quite right, you can always refine it further in chat \u2014 the agent will adjust transitions while keeping the original layout intact.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The &#8220;with audio&#8221; part is what caught my eye \u2014 most AI video tools nail the visuals but leave you to score it yourself afterward. As a music producer, does the agent generate and sync the audio to the motion, or pull from a library? The kinetic-type + motion-graphics angle for promos looks genuinely fast to ship with.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@lennoxbeflying\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@lennoxbeflying<\/a>&nbsp;Hey Ziang! Thanks for the thoughtful question \ud83d\ude4c<br \/>For voiceover: Turn on the voice feature in setup, pick a voice\/accent, and and specify tone or pace in your prompt. The agent generates voiceover synced to your visuals. You can also adjust the script and even the timing of specific lines later in the process (a hard refresh Ctrl + Shift + R may be needed to see updates).<br \/>For BGM: You can pick tracks from our built-in music library and adjust the volume after video generation. We\u2019re working on new audio features, so stay tuned \ud83c\udfac.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The framing around &#8216;ditching AE\/CapCut&#8217; is sharp positioning \u2014 anyone who&#8217;s tried to produce motion graphics professionally knows the learning curve is brutal. What I&#8217;m curious about: for creators who do short-form content (reels, product demos, explainers), how much creative control do you have over pacing and transitions? Does the AI interpret your brief or do you still guide it shot-by-shot?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@theshumba\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@theshumba<\/a>&nbsp;Hi Melusi! Thanks for loving our positioning.<\/p>\n<p>For short videos, you can set overall pacing, transitions and style directly via text. No need to guide frame by frame \u2014 just tell the AI your requirements and it will adjust accordingly.<\/p>\n<p>If you have super specific ideas and want the AI to follow your instructions strictly without creative tweaks, simply state it clearly, and it will fully comply.<\/p>\n<p>Occasionally preview loading issues are caused by cache. Just press Ctrl + Shift + R to hard refresh, and you\u2019ll see the latest updates.<\/p>\n<p>You can also ask the AI about its creation logic anytime in the chat panel. It will explain details from both artistic and technical perspectives. Enjoy using it!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The chat to refine part is what stands out. Most AI video tools give you one output and leave you working backwards from it. Being able to just say what needs changing is a lot more practical. Congrats on the launch.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@oliverbuilds\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@oliverbuilds<\/a>&nbsp;Hey Oliver! This comment made our day \u2014 thank you so much for noticing what we care about most \ud83d\ude4c<br \/>You\u2019re exactly right: most AI video tools force you to rework finished videos. Unlike other tools, you can revise the content repeatedly until you\u2019re fully satisfied before rendering and exporting. Our duplicate project feature also lets users create freely with greater peace of mind. Plus, you won\u2019t need to re-render files over and over again.<\/p>\n<p>This is just the beginning for us, and we\u2019ll keep improving. Thanks again for the support! \ud83c\udf89<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Bold claim to ditch AE\/PR lol. As someone who tests AI workflows daily, I\u2019m curious to see how &#8216;PRO motion graphics&#8217; compares to manual refinement. Is the &#8216;Chat to refine&#8217; loop fast enough for a professional workflow, or is it better suited to rapid prototyping?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@diana_nadim2\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@diana_nadim2<\/a>&nbsp;Hi Diana! Thanks a lot for your great questions.<\/p>\n<p>We\u2019d like to view professional motion graphics in a balanced way. Our product is mainly built for general users, especially those who <strong>struggle with ideation<\/strong> or lack professional editing skills. Our AI agent helps them easily create decent visual results.<\/p>\n<p>As our founder mentioned, iArt is <strong>fully prompt-driven<\/strong>, replacing the traditional manual canvas with simple chat. We also offer <strong>&#8220;<em>Choose Element&#8221;<\/em> <\/strong>and<strong> &#8220;<em>Capture Frame&#8221;<\/em><\/strong> tools for precise and quick editing. That said, the experience can vary a bit depending on your network speed and patience. \ud83e\udd23<br \/>And the system works well for both formal production and rapid prototyping. We actually create all our social media content across platforms with iArt. Beyond regular <strong><em>&#8220;+ New Project&#8221;<\/em><\/strong> feature, our <strong>&#8220;<em>Batch Render&#8221;<\/em><\/strong> is quite practical: you can pick a preferred version from the batch to remix or polish further, or ask the AI to generate entirely new takes.<\/p>\n<p>We really hope you can try out our product and share your feedback with us!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Looks cool!! Congrats. I personally am not hugely familiar with this landscape but I do use CapCut for Reels, marketing, etc. Could you explain the difference between your product and the AI generator within CapCut?  Full disclosure I haven&#8217;t used that feature in CapCut but am just curious about what&#8217;s different<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@millwiller\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@millwiller<\/a>&nbsp;Hey Will! Thanks so much for the great question \ud83d\ude4c<\/p>\n<p>Both are great tools, maybe just built for different workflows.<br \/>CapCut\u2019s AI features are add-ons to its powerful, timeline-based editor \u2014 they give you tons of manual control, but still require hands-on tweaks to pacing, graphics, and transitions after the initial generate.<\/p>\n<p>iArt, by contrast, is fully AI-native. We built it for creators who want results fast, without the learning curve. For non-professional users especially, the AI\u2019s ability to interpret your request and deliver a polished video quickly is often more practical than endless manual controls. You just chat with the agent to refine anything you need \u2014 no timeline, no keyframes, no tedious edits required.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Great,  i have a question can it turn images to into motion graphics with audio?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@daniel_oyetunde\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@daniel_oyetunde<\/a>&nbsp; Thx !  yeah ,  attach with the img , it will transfer  for you .  may not be losslessly,  but normally &gt; 80 % reconstruction.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats! Can you produce animated infographics also?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@luigi_receiptorai\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@luigi_receiptorai<\/a>&nbsp;  yeah buddy!    basically ,  it&#8217;s generating  inforgraphic\/ Vector with motion  ~  <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>I&#8217;m not an expert on this, so I didn&#8217;t understand it from the description. Will iArt generate graphics for me in Vektor? Thanks in advance.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@galyna_arikh\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@galyna_arikh<\/a>&nbsp;     hey ,  thanks for asking ,   It generates  Motion Graphics ,  basically vector graphic with motions. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>When I watched the demo video, I thought this would be a great startup for creating short educational explainers for kids)<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@natalia_iankovych\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@natalia_iankovych<\/a>&nbsp; thanks!   hope it helps,  you can also give it a try  with voice over  turn on ~  <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>How steep is the relearning curve coming from something like cap cut?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@margarita_tsygankova\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@margarita_tsygankova<\/a>&nbsp;It&#8217;s actually quite simple , just prompt. <br \/>Also you can output clips , and reuse them in cap cut <br \/>   Since the Agent nowdays may not be smart enough in video editing,  it may get stuck on a small detail.   <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>does it support all form factors ? like can i give it a bunch of screenshots of my app and see if it can turn it into a video for posting on instagram ?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@vinitvr\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@vinitvr<\/a>&nbsp;  not sure if it can reconstruct it perfectly  , but  screenshot is supported  ,  give it a try  : )  <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>being able to go from a rough outline to a finished promo video without touching after effects is the dream for any marketing team. the multi-input approach is smart too&#8230; sometimes you just want to talk through an idea instead of writing a full brief. curious how much control you get over the output before it&#8217;s final<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@tina_chhabra\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@tina_chhabra<\/a>&nbsp; yeah , definitely !  <\/p>\n<p>With vibe coding , we now ship product 20 times faster , be still stucked in AE when we want to marketing it .<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the launch! The &#8220;no timeline&#8221; approach is a genuine UX bet, most people bounce from traditional editors before they even start. Curious: how does the agent handle brand consistency when you&#8217;re iterating across a series (same font, same color palette, same logo position)? That&#8217;s usually where prompt-driven tools start to drift.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@keirodev\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@keirodev<\/a>&nbsp;Thanks !   <\/p>\n<p> we got a  brand button for it .  <\/p>\n<p>it&#8217;s kind like <a href=\"https:\/\/skill.md\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">skill.md<\/a>  , but for <a href=\"https:\/\/brand.dm\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">brand<\/a> ,  we&#8217;re still on the way to enrich it.   : ) <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/578ad786-09c2-4e7d-8b81-79f3262feea0.png?auto=compress,format&amp;codec=mozjpeg&amp;cs=strip\" style=\"max-width: 100%\"><\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Love the batch render. question &#8211; when you say &#8220;mention assets in chat to keep on-brand,&#8221; is that uploading a brand guide or referencing already-uploaded assets?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@dioiv\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@dioiv<\/a>&nbsp; Thanks , we support  both  uploading and reusing ~   may I ask what would you create for batch render : )<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Generating temporally coherent animation from static design assets is genuinely hard. Frame-to-frame consistency breaks down fast, especially with crisp edges like logos or UI elements. We&#8217;ve experimented with a few text-to-video pipelines and that&#8217;s always where things fall apart. What&#8217;s your approach to maintaining consistency across frames when the source asset has hard edges or precise typography?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@anand_thakkar1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@anand_thakkar1<\/a>&nbsp; we are  still on the way,  quite hard actually,  we tried a looot of ways to upgrade the agent.  I think the key is about  letting the agent  focus on the brand or style guidiance.  component libs also helps !<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Absolutely love it! Did you create the intro video with iArt.ai?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@fberrez1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@fberrez1<\/a>&nbsp;Thank you so much for the support! Yeah we made the video with our agent and here&#8217;s <a href=\"https:\/\/www.youtube.com\/watch?v=ndtpE1Qb9Rc\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">another launch video<\/a> in different visual style. \ud83d\ude0b<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/303a7153-16b8-405c-bf6d-5eaad7635ed3.png?auto=compress,format&amp;codec=mozjpeg&amp;cs=strip\" style=\"max-width: 100%\"><\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>How does the system handle complex typography in non-Latin scripts like Chinese or Arabic?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@syozz\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@syozz<\/a>&nbsp;Great question, Ethan! For non-Latin scripts, <strong>Chinese<\/strong> is supported with stable rendering.<\/p>\n<p>Regarding <strong>Arabic<\/strong>, we want to be precise: we recently audited past projects from our Arabic user base with no major text rendering issues found.<\/p>\n<p>However, we are always pushing for deeper optimization when it comes to script-specific typography (like advanced line-breaking or perfect font pairing). So while the core formatting works reliably, quality might vary on some unique layout edge cases.<\/p>\n<p>We highly recommend running a quick test with your own text! If you spot any layout bugs, please let us know\u2014user examples are exactly what help us prioritize and polish these localized features.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the launch! \ud83d\ude80 The idea of replacing complex video editing workflows with a chat-based agent is really interesting. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@alina_tyslenok_\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@alina_tyslenok_<\/a>&nbsp;Thank you so much for the kind words! That&#8217;s exactly why we built this\u2014traditional video editing has such a steep learning curve. We wanted to make creating professional content as simple and natural as having a conversation. Hope you enjoy trying it out!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>How does the Brand Kit feature actually work? Can I upload my brand&#8217;s custom TTF fonts and hex colors so the agent strictly restricts generations to them?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@eexlkuang_se\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@eexlkuang_se<\/a>&nbsp;Spot on! As you can see in our Brand Kit setup, we&#8217;ve built specific slots for <strong>Logo, Colors, Fonts, and Images<\/strong>.<\/p>\n<p>You can absolutely input your custom hex codes and upload your brand&#8217;s TTF fonts. The agent takes these inputs as hard constraints to restrict layouts and styling, so you get brand-compliant generations every single time. Give it a spin and let us know how it works for you!<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/98dd44d8-175b-4e4a-b72f-88b422922c97.png?auto=compress,format&amp;codec=mozjpeg&amp;cs=strip\" style=\"max-width: 100%\"><\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Does iArt rely on a set of pre-made templates that it fills, or is the layout generated entirely dynamically based on the prompt&#8217;s context?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@summer_tao\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@summer_tao<\/a>&nbsp;Great question! iArt is primarily powered by dynamic generation, but we also support templates. Even better, you can explore and <strong>remix<\/strong> any <strong>community-created<\/strong> layouts from our showcase!<\/p>\n<p>We are currently fast-tracking the development of a brand-new batch of premium templates to give you even more design flexibility. Stay tuned for the upcoming updates!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>As someone who has spent days fighting keyframes,  timeline-free animation is exactly what we need. Congrats on the launch!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@jiaqichen\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@jiaqichen<\/a>&nbsp;Appreciate the love! Cheers to a future with fewer keyframe headaches. We&#8217;d love to hear your thoughts once you try it out\u2014let us know how it compares to your usual workflow!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#7<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/O2SPCGELEUD5BO\" class=\"app-title\">Incorruptible by Eric Ries<\/a><\/p>\n<div class=\"one-liner\">Why good companies go bad and how great companies stay great<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">174<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>Eric Ries\u7684\u65b0\u4e66\u63ed\u793a\u4e86\u4e3a\u4f55\u4f18\u79c0\u4f01\u4e1a\u4f1a\u56e0\u201c\u8d22\u52a1\u91cd\u529b\u201d\u504f\u79bb\u521d\u5fc3\uff0c\u5e76\u63d0\u4f9b\u4e86\u4e00\u5957\u6cbb\u7406\u8bbe\u8ba1\u6846\u67b6\uff0c\u5e2e\u52a9\u7ec4\u7ec7\u5728\u589e\u957f\u548c\u76c8\u5229\u4e2d\u4fdd\u6301\u7075\u9b42\u4e0e\u4f7f\u547d\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/a609c3f6-599d-4645-864a-2c1b35338ae3.jpeg?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/c189fbd1-a85f-4368-8904-373b5b9c5442.jpeg?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/18d8596a-62dd-40b6-98d7-db44552357fe.jpeg?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/0575010d-a7b4-41f5-9aa2-f7b918c75cc3.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/285b63ea-6ae0-4321-a1b5-820c80abab8b.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/89d57e35-9f67-4d01-b6b6-b7a2df24f780.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/34defeed-7578-4030-ae3d-3e8a192cb81a.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/7d1ef2d4-8d4b-43e9-af3c-409020d9e7e7.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <video class=\"media-content\" poster=\"https:\/\/ph-files.imgix.net\/da5052e0-c40c-434d-b05f-5505d4aa0c22.jpeg?auto=format\" data-video-url=\"https:\/\/youtube.com\/shorts\/WfG1nziIs2A?si=eKAwcME04hQROYeS\"><source src=\"https:\/\/youtube.com\/shorts\/WfG1nziIs2A?si=eKAwcME04hQROYeS\" type=\"video\/mp4\"><\/video><\/p>\n<div class=\"video-overlay\">\n<div class=\"play-icon\">\u25b6<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Startup Books<\/span><br \/>\n            <span class=\"tag\">Startup Lessons<\/span><br \/>\n            <span class=\"tag\">Business Books<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">\u5546\u4e1a\u4e66\u7c4d<\/span><br \/>\n            <span class=\"tag\">\u516c\u53f8\u6cbb\u7406<\/span><br \/>\n            <span class=\"tag\">\u4ef7\u503c\u5b88\u62a4<\/span><br \/>\n            <span class=\"tag\">\u521b\u4e1a\u7ba1\u7406<\/span><br \/>\n            <span class=\"tag\">\u7ec4\u7ec7\u6587\u5316<\/span><br \/>\n            <span class=\"tag\">\u957f\u671f\u4e3b\u4e49<\/span><br \/>\n            <span class=\"tag\">\u6cbb\u7406\u8bbe\u8ba1<\/span><br \/>\n            <span class=\"tag\">\u4f01\u4e1a\u8f6c\u578b<\/span><br \/>\n            <span class=\"tag\">\u8d22\u52a1\u91cd\u529b<\/span><br \/>\n            <span class=\"tag\">Eric Ries<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u666e\u904d\u8ba4\u53ef\u8be5\u4e66\u5bf9\u77ed\u671f\u4e3b\u4e49\u548c\u7ed3\u6784\u6027\u8150\u8d25\u7684\u5256\u6790\uff0c\u95ee\u9898\u96c6\u4e2d\u5728\u6cbb\u7406\u6846\u67b6\u521d\u521b\u671f\u9002\u7528\u6027\u3001\u6295\u8d44\u8005\u5e72\u9884\u540e\u7684\u4fdd\u62a4\u5931\u6548\u3001\u4ee5\u53ca\u653f\u5e9c\u89d2\u8272\u3002\u5efa\u8bae\uff1a\u521b\u4e1a\u8005\u5e94\u5c3d\u65e9\u5d4c\u5165\u4f7f\u547d\u4fdd\u62a4\u6761\u6b3e\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                \u4f5c\u4e3a\u300a\u7cbe\u76ca\u521b\u4e1a\u300b\u4f5c\u8005\u7684\u65b0\u4f5c\uff0cIncorruptible\u663e\u7136\u7784\u51c6\u4e86\u4e00\u4e2a\u66f4\u5b8f\u5927\u7684\u547d\u9898\uff1a\u5982\u4f55\u8ba9\u597d\u516c\u53f8\u4e0d\u6b7b\u4e8e\u6210\u529f\u540e\u7684\u5f02\u5316\u3002\u4e66\u7684\u5b9a\u4f4d\u6e05\u6670\u2014\u2014\u5b83\u4e0d\u6559\u4f60\u5982\u4f55\u4ece0\u52301\uff0c\u800c\u662f\u6559\u4f60\u57281\u5230\u65e0\u7a77\u5927\u65f6\u5982\u4f55\u4e0d\u88ab\u201c\u8d22\u52a1\u91cd\u529b\u201d\u62d6\u57ae\u3002\u8fd9\u4e00\u6d1e\u5bdf\u7cbe\u51c6\uff0c\u76f4\u51fb\u5f53\u4e0b\u72ec\u89d2\u517d\u201c\u4e0a\u5e02\u5373\u53d8\u8d28\u201d\u3001\u521b\u59cb\u4eba\u5957\u73b0\u8dd1\u8def\u3001\u80a1\u4e1c\u77ed\u89c6\u6536\u5272\u7b49\u73b0\u5b9e\u75db\u70b9\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u4f46\u503c\u5f97\u8b66\u60d5\u7684\u662f\uff0c\u8fd9\u672c\u4e66\u7684\u98ce\u9669\u6070\u6070\u5728\u4e8e\u8fc7\u4e8e\u7406\u60f3\u5316\u3002Eric\u63d0\u51fa\u7684\u201c\u6cbb\u7406\u5821\u5792\u201d\u80cc\u540e\u662f\u6cd5\u5f8b\u67b6\u6784\u3001\u80a1\u6743\u8bbe\u8ba1\u548c\u8463\u4e8b\u4f1a\u6587\u5316\u7684\u9ad8\u5ea6\u5b9a\u5236\u5316\uff0c\u5bf9\u5927\u591a\u6570\u4e2d\u5c0f\u4f01\u4e1a\u800c\u8a00\uff0c\u8fd9\u66f4\u50cf\u5962\u4f88\u54c1\u800c\u975e\u65e5\u7528\u54c1\u3002\u4e66\u4e2d\u5217\u4e3e\u7684Costco\u3001Patagonia\u3001Anthropic\u7b49\u6848\u4f8b\uff0c\u65e0\u4e00\u4e0d\u662f\u62e5\u6709\u5f3a\u521b\u59cb\u4eba\u63a7\u5236\u6743\u6216\u6df1\u539a\u54c1\u724c\u62a4\u57ce\u6cb3\u7684\u4f7c\u4f7c\u8005\u3002\u5bf9\u4e8e\u666e\u901a\u521b\u4e1a\u516c\u53f8\uff0c\u6a21\u4eff\u6210\u672c\u6781\u9ad8\uff0c\u4e14\u53ef\u80fd\u56e0\u8fc7\u65e9\u7684\u6cbb\u7406\u521a\u6027\u800c\u727a\u7272\u7075\u6d3b\u6027\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u6b64\u5916\uff0cEric\u672c\u4eba\u4e5f\u627f\u8ba4\uff0c\u6295\u8d44\u8005\u4e3b\u5bfc\u7684\u201c\u80a1\u4e1c\u81f3\u4e0a\u201d\u662f\u95ee\u9898\u6839\u6e90\u3002\u4f46\u73b0\u5b9e\u4e2d\uff0c\u521b\u4e1a\u8005\u5bf9\u6297\u8d44\u672c\u7684\u529b\u91cf\u6781\u5176\u6709\u9650\u3002\u4e66\u7684\u771f\u6b63\u4ef7\u503c\u6216\u8bb8\u4e0d\u5728\u4e8e\u63d0\u4f9b\u4e00\u4e2a\u4e07\u7528\u6a21\u677f\uff0c\u800c\u662f\u6fc0\u53d1\u4e00\u79cd\u201c\u53cd\u8106\u5f31\u201d\u7684\u7ec4\u7ec7\u610f\u8bc6\u2014\u2014\u8ba9\u521b\u59cb\u4eba\u5728\u878d\u8d44\u3001\u6269\u5f20\u3001IPO\u524d\u5c31\u60f3\u6e05\u695a\u201c\u6211\u8981\u5b88\u62a4\u4ec0\u4e48\u201d\u3002\u4ece\u8fd9\u4e2a\u89d2\u5ea6\u770b\uff0c\u5b83\u66f4\u50cf\u4e00\u5242\u6587\u5316\u75ab\u82d7\uff0c\u800c\u975e\u624b\u672f\u5200\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u5982\u679c\u300a\u7cbe\u76ca\u521b\u4e1a\u300b\u89e3\u51b3\u7684\u662f\u201c\u5982\u4f55\u505a\u6b63\u786e\u7684\u4e8b\u201d\uff0c\u90a3\u4e48\u8fd9\u672c\u4e66\u8bd5\u56fe\u56de\u7b54\u201c\u5982\u4f55\u6b63\u786e\u505a\u4e8b\u201d\u3002\u4f46\u540e\u8005\u8fdc\u6bd4\u524d\u8005\u8270\u96be\uff0c\u56e0\u4e3a\u6d88\u8017\u4f60\u7684\u4ece\u6765\u4e0d\u662f\u65b9\u6cd5\uff0c\u800c\u662f\u65b9\u5411\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">Incorruptible by Eric Ries<\/span>\n                <\/div>\n<div class=\"comment-content\">Instant NY Times bestseller from Eric Ries, creator of The Lean Startup. Incorruptible reveals the structural forces (&#8220;financial gravity&#8221;) that pull great companies away from their founding purpose, and the governance design that lets the best ones resist it. The book offers the blueprint for organizations that can grow, prosper, and endure without losing their soul. \ud83d\udcac Launch AMA with Eric \ud83d\udcd8 Free implementation guide for Product Hunt incorruptible.co\/resources\/guide-for-ph<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Hey Product Hunt \ud83d\udc4b<br \/>Two weeks ago I published a new bestselling book. While The Lean Startup helps entrepreneurs create valuable organizations, Incorruptible covers why and how to protect them.<\/p>\n<p>I wanted to run a launch here because Product Hunt&#8217;s audience (founders, operators, people who actually build things) is exactly who the book is for. What&#8217;s most exciting to me is the emotional response and the early adopters already applying these protections to their companies. <\/p>\n<p>Corruption in companies almost never starts with bad people. It&#8217;s structural. There&#8217;s a gravitational pull toward extraction, toward the next quarter, toward &#8220;best practices&#8221; that quietly hollow you out. Unless you design against it, it wins. The book is about how the best companies (Costco, Patagonia, Novo Nordisk, Cloudflare, Anthropic) build what I call a governance fortress.<\/p>\n<p>For anyone who wants to take the frameworks further, I&#8217;m sharing the implementation guide free with Product Hunt folks at <a href=\"http:\/\/www.incorruptible.co\/resources\/guide-for-ph\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">www.incorruptible.co\/resources\/g&#8230;<\/a>. It&#8217;s the workshop version, in writing.<\/p>\n<p>I&#8217;ll be in the comments all day. Ask me anything about financial gravity, mission-controlled companies, why I think a lot of startup advice (including some of my own) needs an update for the AI era, or where you&#8217;re seeing the patterns in companies you know.<\/p>\n<p>Genuinely excited for this discussion.<br \/>Eric<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>5<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@ericries\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@ericries<\/a>&nbsp;Congrats on the launch, Eric! How early in a startup\u2019s lifecycle should founders start implementing this governance design to proactively resist financial gravity<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>I\u2019ve been spreading the word at London Tech Week, lots of minds to be convinced!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>4<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@david_knox1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@david_knox1<\/a>&nbsp;thank you! I look forward to launching the UK edition formally in early September.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on today&#8217;s launch!!!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@thamibenjelloun\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@thamibenjelloun<\/a>&nbsp;Thank you. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Loving this book. Exactly what is needed right now &#8211; extractive capitalism is bleeding us dry. Is there a point in time where the scales tipped to the short-termism? Also, are there examples where a government has intervened to rebalance? <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@stphnmrrs\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@stphnmrrs<\/a>&nbsp;it&#8217;s confusing because both of these things are true:<\/p>\n<ol>\n<li>\n<p>this problem has been going on a long time (I give examples in the book going back &gt;200 years)<\/p>\n<\/li>\n<li>\n<p>this problem has gotten a lot worse recently<\/p>\n<\/li>\n<\/ol>\n<p>I think one of the key mistakes was the shift to &#8220;shareholder primacy&#8221; a few decades ago. This shift is, fortunately, young enough that it&#8217;s still quite easily reversible, if we will it.<\/p>\n<\/p>\n<p>The recent trend to allow companies to incorporate as &#8220;public benefit corps&#8221; in states like Delaware is an example of this rebalancing that you describe. We have to deal with the fact that many governments have been captured by the interests of the wealthy and especially of investors, which makes them less likely to want to do this rebalancing. But this, too, can be resisted, if we will it.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The leaders at my company need to read this right now.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@markusb79\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@markusb79<\/a>&nbsp;Let&#8217;s get them copies ASAP! <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The book is a really great read and well-researched. It is definitely highly recommended for any business founder and also for investors. <a href=\"https:\/\/www.producthunt.com\/@ericries\" data-node-type=\"mention\" data-mention-type=\"user\" data-mention-id=\"ericries\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@ericries<\/a> When most investor-backed businesses are built to be sold, don&#8217;t the protections all go away when the buyer (e.g. PE firm) decides to dismantle everything?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@regina_jaslow\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@regina_jaslow<\/a>&nbsp;Pretty much, although there are the occasional exceptions. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Thank you for this timely blueprint, Eric. When imagining what Incorruptible would detail, I thought of it as a brilliant epilogue to Built to Last, given the emphasis on how to build institutions that survive the test of time without losing their soul. But your mission transmission goes farther than core ideology. And its stunning.  Would you say Incorruptible is as appropriate for the nascent entrepreneur, a person at ground-zero (me), as it is for the seasoned entrepreneur?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@sandra_sydnor\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@sandra_sydnor<\/a>&nbsp;I would say it&#8217;s far more important, as you&#8217;re much more at risk of the corruption that this book is designed to prevent. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the new book, <a href=\"https:\/\/www.producthunt.com\/@ericries\" data-node-type=\"mention\" data-mention-type=\"user\" data-mention-id=\"ericries\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@ericries<\/a>. Does it get easier to write a book now that you&#8217;ve done it a few times?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@rrhoover\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@rrhoover<\/a>&nbsp;Well, not really, because now I know how difficult it is, and so it&#8217;s actually a bit daunting. In all seriousness, it&#8217;s a bit of a mixed bag. Because I&#8217;ve been successful with my previous books, I have had the immense privilege of being able to afford a team to help me. I had researchers and editors and all kinds of allies.<\/p>\n<p>On the other hand, I felt immense pressure to try and deliver something worthy of being seen by people as the successor to The Lean Startup. As many other artists have attested over the many generations, that pressure can be, in some ways, debilitating. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Feels extremely relevant in a world figuring out how best to govern AI, and the organizations that create and use it. Can&#8217;t imagine a better person than Eric to have written this book.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The book looks interesting, I\u2019ll give it a read. But where\u2019s the startup here? This is the first time in a long while that I\u2019ve seen someone post a book here \ud83d\ude09<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@natalia_iankovych\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@natalia_iankovych<\/a>&nbsp;I hope it&#8217;s ok!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@natalia_iankovych\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@natalia_iankovych<\/a>&nbsp;, the <strong>Startup <\/strong>is there, it is just <strong>Lean <\/strong>&#8211; pun intended<br \/>I&#8217;d recommend you pack the book with its ante-predecessor, starting with the latter \ud83d\ude09<\/p>\n<p>Many Indie authors post on PH, some time the full copy, other times extracts. If there is someone legitimate to post his newest book here, it&#8217;s Eric<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Best book ever.<\/p>\n<p>How many of us just want to work with good people who find joy in finding ever more innovative new ways to bring more joy to others in our offerings?<\/p>\n<p>That should be easy, right?<\/p>\n<p>But it&#8217;s not.<\/p>\n<p>The corruption of the corporate world has driven me mad for decades.<\/p>\n<p>I moved to Silicon Valley in 2009 because it seemed like the only hope for finding \u201cDon\u2019t be evil\u201d companies who could sustain that vow.<\/p>\n<p>This is the happiest I\u2019ve been in a very long time.<\/p>\n<p>I am so very grateful for this book and everyone who is working to create a world in which this vision might actually become real.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@alexryan\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@alexryan<\/a>&nbsp;thank you!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">The \u2018gravitational pull toward extraction\u2019 framing is precise in a way most governance writing isn\u2019t. It\u2019s not that founders become bad people \u2014 it\u2019s that the structure rewards certain decisions until those decisions become the default. Building Composa as a solo founder, the version of this I fight is different in scale but identical in mechanism: the pull toward growth metrics over the thing that actually makes the product worth using. Question for you Eric: at what company size does the governance fortress become necessary versus just founder values being enough?<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@dani_mashael\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@dani_mashael<\/a>&nbsp;one of the most important ideas in the book is that &#8220;it&#8217;s always too early until it&#8217;s too late.&#8221; I personally think companies, whenever possible, should reserve the option to install mission-protective provisions into the legal documents from as early an age as possible. Notice that investors do this routinely and without needing to explain or defend themselves. Why shouldn&#8217;t the mission get the same consideration?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#8<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/SS55DMUBMZCXE7\" class=\"app-title\">Napkin Math<\/a><\/p>\n<div class=\"one-liner\">personalized AI food journal + nutrition coach<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">166<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>Napkin Math\u662f\u4e00\u6b3e\u901a\u8fc7\u62cd\u7167\u8bb0\u5f55\u98df\u7269\u3001\u5e76\u7ed3\u5408AI\u63d0\u4f9b\u4e2a\u6027\u5316\u8425\u517b\u5206\u6790\u4e0e\u8f85\u5bfc\u7684\u5065\u5eb7\u5e94\u7528\uff0c\u65e8\u5728\u6d88\u9664\u4f20\u7edf\u996e\u98df\u8ffd\u8e2a\u7684\u8d1f\u7f6a\u611f\u4e0e\u7e41\u7410\u64cd\u4f5c\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/99f1ba24-c8e5-463b-a7ef-b9ff2acdcb33.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/cdb0581a-707f-4c09-a33a-2eef57e2a40e.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/335924ab-d801-4d56-94c5-fda9f787a8b2.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/7e208969-bb42-4400-b9e3-7a89cbba9869.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/f08759b0-1740-4440-816f-d03c70944963.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/9cf08adf-ad0e-4ab3-a77c-03443aab7845.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <video class=\"media-content\" poster=\"https:\/\/ph-files.imgix.net\/b0d54dc5-4a26-4266-8d6d-a8ed98b47eaf.jpeg?auto=format\" data-video-url=\"https:\/\/www.youtube.com\/watch?v=IJ09vrOkSOE\"><source src=\"https:\/\/www.youtube.com\/watch?v=IJ09vrOkSOE\" type=\"video\/mp4\"><\/video><\/p>\n<div class=\"video-overlay\">\n<div class=\"play-icon\">\u25b6<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Health &#038; Fitness<\/span><br \/>\n            <span class=\"tag\">Social Network<\/span><br \/>\n            <span class=\"tag\">Nutrition<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">AI\u8425\u517b\u5e08<\/span><br \/>\n            <span class=\"tag\">\u98df\u7269\u62cd\u7167\u8bb0\u5f55<\/span><br \/>\n            <span class=\"tag\">\u996e\u98df\u65e5\u8bb0<\/span><br \/>\n            <span class=\"tag\">\u4e2a\u6027\u5316\u5065\u5eb7<\/span><br \/>\n            <span class=\"tag\">\u975e\u5361\u8def\u91cc\u8ffd\u8e2a<\/span><br \/>\n            <span class=\"tag\">\u793e\u4ea4\u996e\u98df<\/span><br \/>\n            <span class=\"tag\">\u9690\u79c1\u4fdd\u62a4<\/span><br \/>\n            <span class=\"tag\">\u6162\u6027\u75c5\u7ba1\u7406<\/span><br \/>\n            <span class=\"tag\">\u4e60\u60ef\u517b\u6210<\/span><br \/>\n            <span class=\"tag\">\u89c6\u89c9\u5316\u65e5\u5fd7<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u9ad8\u5ea6\u8ba4\u53ef\u5176\u201c\u975e\u5361\u8def\u91cc\u8ba1\u6570\u201d\u548c\u201c\u5feb\u4e50\u8ffd\u8e2a\u201d\u7406\u5ff5\u3002\u4e3b\u8981\u5173\u6ce8\u70b9\u5305\u62ec\uff1a\u7167\u7247\u8bc6\u522b\u7cbe\u5ea6\uff08\u5c24\u5176\u662f\u6df7\u5408\u83dc\u80b4\u548c\u9171\u6599\uff09\u3001\u9690\u79c1\u4e0e\u793e\u4ea4\u5206\u4eab\u7684\u5e73\u8861\u3001\u5982\u4f55\u7ef4\u6301\u4f7f\u7528\u4e60\u60ef\u3001\u4ee5\u53ca\u5bf9\u7279\u5b9a\u5065\u5eb7\u72b6\u51b5\uff08\u5982PCOS\u3001\u80a0\u80c3\u95ee\u9898\uff09\u7684\u652f\u6301\u3002\u7528\u6237\u5e0c\u671b\u672a\u6765\u80fd\u6574\u5408\u8fd0\u52a8\u8ffd\u8e2a\u5e76\u4e0e\u533b\u7597\u7cfb\u7edf\u5bf9\u63a5\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                Napkin Math\u7684\u5de7\u5999\u4e4b\u5904\u5728\u4e8e\uff0c\u5b83\u6ca1\u6709\u4e0eMyFitnessPal\u7b49\u4f20\u7edf\u201c\u5361\u8def\u91cc\u8ba1\u6570\u5668\u201d\u5728\u6570\u636e\u7cbe\u5ea6\u548c\u529f\u80fd\u5806\u780c\u4e0a\u786c\u78b0\u786c\uff0c\u800c\u662f\u7cbe\u51c6\u5730\u5207\u5165\u4e86\u201c\u56e0\u89c9\u5bdf\u800c\u7126\u8651\u201d\u8fd9\u4e00\u6838\u5fc3\u7528\u6237\u75db\u70b9\u3002\u5b83\u5c06\u201c\u8ffd\u8e2a\u201d\u91cd\u65b0\u5b9a\u4e49\u4e3a\u4e00\u79cd\u201c\u5206\u4eab\u201d\u548c\u201c\u8bb0\u5f55\u201d\uff0c\u672c\u8d28\u4e0a\u662f\u628a\u201c\u5065\u8eab\u201d\u573a\u666f\u91cc\u7684Strava\u6a21\u5f0f\u79fb\u690d\u5230\u4e86\u201c\u996e\u98df\u201d\u573a\u666f\u3002\u5176\u771f\u6b63\u7684\u62a4\u57ce\u6cb3\u5e76\u975eAI\u8bc6\u522b\u98df\u7269\u7684\u7cbe\u5ea6\uff08\u8fd9\u662f\u6240\u6709\u5927\u6a21\u578b\u90fd\u80fd\u505a\u5230\u7684\uff09\uff0c\u800c\u662f\u901a\u8fc7\u201c\u53ef\u7231\u7684\u8bbe\u8ba1\u201d\u3001\u201c\u975e\u8bc4\u5224\u7684\u793e\u533a\u6c1b\u56f4\u201d\u548c\u201c\u9690\u79c1\u9ed8\u8ba4\u201d\u6784\u5efa\u4e86\u4e00\u4e2a\u5fc3\u7406\u5b89\u5168\u7684\u95ed\u73af\u3002\u521b\u59cb\u4eba\u201c\u53bb\u533b\u9662\u540e\u627e\u4e0d\u5230\u89e3\u51b3\u65b9\u6848\u201d\u7684\u80cc\u666f\u6545\u4e8b\uff0c\u8fdc\u6bd4\u4efb\u4f55\u529f\u80fd\u5217\u8868\u66f4\u5177\u8bf4\u670d\u529b\uff0c\u8fd9\u8d4b\u4e88\u4e86\u4ea7\u54c1\u6781\u5f3a\u7684\u60c5\u611f\u951a\u70b9\u3002\u4f46\u9700\u8b66\u60d5\u4e24\u70b9\uff1a\u5176\u4e00\uff0cStrava\u7684\u6838\u5fc3\u9a71\u52a8\u529b\u662f\u516c\u5f00\u7ade\u4e89\u548c\u91cf\u5316\u6570\u636e\uff0c\u800cNapkin Math\u4e3b\u6253\u201c\u79c1\u5bc6\u201d\u4e0e\u201c\u5feb\u4e50\u201d\uff0c\u793e\u4ea4\u5c5e\u6027\u7684\u6fc0\u6d3b\u4e0e\u5546\u4e1a\u6a21\u578b\uff08\u5982\u4ed8\u8d39\u8ba2\u9605\uff09\u7684\u5339\u914d\u5ea6\u5b58\u7591\uff1b\u5176\u4e8c\uff0cAI\u8f85\u52a9\u5206\u6790\u4e00\u65e6\u6d89\u53ca\u533b\u7597\u7ea7\u522b\u7684\u5efa\u8bae\uff08\u5982\u9488\u5bf9\u80a0\u6613\u6fc0\u7efc\u5408\u5f81\u7684\u52a8\u6001\u996e\u98df\u8c03\u6574\uff09\uff0c\u5176\u6cd5\u5f8b\u4e0e\u8d23\u4efb\u98ce\u9669\u5c06\u5448\u6307\u6570\u7ea7\u4e0a\u5347\u3002\u76ee\u524d\u5b83\u66f4\u50cf\u4e00\u4e2a\u201c\u7cbe\u81f4\u7684\u60c5\u7eea\u7b14\u8bb0\u672c\u201d\uff0c\u800c\u975e\u786c\u6838\u7684\u5065\u5eb7\u5de5\u5177\uff0c\u5982\u4f55\u5728\u4e0d\u5931\u53bb\u201c\u5feb\u4e50\u201d\u5185\u6838\u7684\u524d\u63d0\u4e0b\uff0c\u5d4c\u5165\u66f4\u591a\u8ba9\u7528\u6237\u201c\u79bb\u4e0d\u5f00\u201d\u7684\u6570\u636e\u6d1e\u5bdf\uff08\u5982\u8840\u7cd6\u53cd\u5e94\u5173\u8054\u3001\u8425\u517b\u5143\u7d20\u957f\u5468\u671f\u5206\u6790\uff09\uff0c\u624d\u662f\u4ece\u201c\u6709\u8da3\u5c1d\u9c9c\u201d\u8d70\u5411\u201c\u9ad8\u9891\u521a\u9700\u201d\u7684\u5173\u952e\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">Napkin Math<\/span>\n                <\/div>\n<div class=\"comment-content\">Napkin Math is the personalized AI food journal that helps people achieve their health goals. as simple as taking a photo of your food so cute you&#8217;ll share it with a friend<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">You\u2019re leaning into a \u201cStrava for food\u201d social vibe\u2014what have you learned people are comfortable sharing vs keeping private, and what guardrails (privacy controls, defaults, anti-comparison design) are essential to keep it joyful and non-judgmental?<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>5<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@curiouskitty\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@curiouskitty<\/a>&nbsp;privacy and trust are critical at Napkin Math! First off, you control everything in the app and what is shared or kept private.<\/p>\n<p>All notes about your meal, how you are feeling throughout the day are kept private, chats with our AI, and plans you build are kept private. Food is personal and Napkin Math is safe place whether you are managing a health condition, an eating disorder, or just your plan to cook more. <\/p>\n<p>That said &#8211; people are sharing a lot! People share both their beautiful home cooked dinners and their scavenged leftover lunches. <\/p>\n<p>People can share with their friends or globally in our social feed. We designed a simple upvote system to keep it positive when you share globally. And with friends we open up comments that we call &#8220;bites&#8221; to both praise their food and playfully remind them when they skip lunch (that&#8217;s me \ud83d\ude43).<\/p>\n<p>We&#8217;re looking to add more you can share in the future such as recipes or meals plans. Would love to hear anything else you might like to share about your food!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Your app feels like the opposite of every fitness product that makes people feel guilty for eating. That alone makes it memorable. I can imagine teenagers using this causally while still building healthier habits without even realizing they are tracking nutrition.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>4<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@alheri_murya\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@alheri_murya<\/a>&nbsp;Agreed! Food shouldn&#8217;t make you feel guilty and we want to change that for everyone.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Nutrition tracking is for everyone.<\/p>\n<p>A year ago, I suddenly had an intense stomach pain. My husband rushed me to the ER, where they gave me opioids and ultrasounds. And then I was handed the list. The list of food triggers, that covered 80% of my regular diet. I needed to track everything I ate, when I was in pain, and look for patterns.<\/p>\n<\/p>\n<p>So I went home and searched where I thought there would clearly be a solution: the app store. But I was shocked to find, that since my time in high school, food tracking was still only narrowly focused on calorie deficits.<\/p>\n<p>That&#8217;s why we built Napkin Math.<\/p>\n<p>A nutrition tracker built to be hyper-personalized to your health goals. It feels joyful, social, and playful. All the while, your data works for you and supports you on your <em>personal<\/em> health journey. Think &#8220;Strava for Food&#8221;: you log, you learn patterns, and you do it alongside your community in a beautiful journal.<\/p>\n<p>We&#8217;d love your feedback! What&#8217;s worked (or really hasn&#8217;t) for you and food?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>4<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@jynnie\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@jynnie<\/a>&nbsp;Congrats on the launch, Jynnie. The fact that this came out of a real experience with your own gut health makes the product feel different from everything else in this space.<\/p>\n<p>One thing I noticed: the story you just shared in this comment is the sharpest, most emotionally specific copy for Napkin Math that exists anywhere. The ER visit, the list of food triggers, opening the App Store and finding nothing but calorie counters. Someone with a mystery gut issue or unexplained energy crashes would read that and feel completely seen.<\/p>\n<p>The homepage doesn&#8217;t have any of it. Curious whether that was a deliberate choice to keep things minimal?<\/p>\n<p>(direct response copywriter, which means I can&#8217;t read a homepage without doing this)<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>3<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Really like the non-calorie-counter angle here. Food tracking is much easier to stick with when it feels like a journal, not homework.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@farrukh_butt1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@farrukh_butt1<\/a>&nbsp;Thanks! Would love for you to give it a try and let us know what you think!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>How accurate is it at estimating portions and ingredients from a messy real plate?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@thamibenjelloun\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@thamibenjelloun<\/a>&nbsp;we find it to be incredibly accurate just from a photo! <\/p>\n<p>But what we see people doing even more is adding notes to their meals like &#8220;I only ate half the bagel&#8221; or &#8220;I scraped off the icing on the cupcake&#8221; and we can quickly reanalyze the meal. Including those little notes are really how we get more accurate with the way people eat. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>How does it track seasoning and sauces in dishes? Also can you upload workouts to the app to help evaluate your meal intake?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@sasha_mcclendon\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@sasha_mcclendon<\/a>&nbsp;You can always include written notes with your photo or even after you have submitted your photo. This updates the nutritional analysis and helps people accurate capture what they really ate such as seasoning or sauces.<\/p>\n<p>As for workouts, yes, we integrate with Apple Health and are working on a beta to show more things you track like heart rate, sleep, hormonal heath, and more. For example, I track a plan to have Napkin Math remind me to eat more protein and hydrate after I go for runs!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats team! The focus on privacy and non-judgmental tracking will probably encourage more consistent use.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@marianna_tymchuk\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@marianna_tymchuk<\/a>&nbsp;Thanks Marianna! That&#8217;s our goal! We believe food is joyful and social and building a community to do that together.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Photo-logging is the smart call here, because what kills food journals isn&#8217;t motivation, it&#8217;s friction&#8230; by day 4 nobody wants to type &#8220;grilled chicken, 180g&#8221; into a database. I build a habit app, so the moment I always come back to is the missed day. Someone logs for a week, skips three days, feels guilty, then quietly ghosts. What pulls them back, does the coach reach out, or is the &#8220;cute enough to share&#8221; part doing that work?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@luca_capone\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@luca_capone<\/a>&nbsp;You get it! Building a habit is hard and a lot of apps just lean on your willpower to keep doing the work. In short we make it fun, social, and have a coach to remind and adapt your plan.<\/p>\n<p>Napkin Math is making food fun with a visual journal that you want to keep building on. Many people join just for the sharable calendar view.<\/p>\n<p>Then the hidden unlock has been friends. We are seeing an increase of partners, families, and friends join the app where they remind their spouse to eat lunch (that&#8217;s me \ud83d\ude43) and beg their friends to show them where they got that matcha from.<\/p>\n<p>For people tracking a specific goal we have exactly what you called out &#8211; a coach that reaches out to check-in. This helps remind people to stick to their plans but also adapts when you get sick, go on vacation, or only have two choices at the office lunch.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>I love how simple and approachable this feels. Most food tracking apps can be overwhelming, but taking a quick photo is something people can actually stick with.<\/p>\n<\/p>\n<p>As someone managing PCOS, I can see how helpful this could be for building awareness around food choices without the stress of manually logging every detail. Making the process easier and more enjoyable is a huge win for long-term consistency.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@gabriella_anjani\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@gabriella_anjani<\/a>&nbsp;love to hear how our approach resonates with you!<\/p>\n<p>We&#8217;re building Napkin Math to be a life long companion so it&#8217;s fun all the time and give you the tools to help manage your conditions day-to-day. <\/p>\n<p>If you try out the app, I would love to hear your feedback!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Just downloaded it and it&#8217;s so cute. I&#8217;m very in the fiber maxing zone but I&#8217;m curious to know how well it works with Indian food. I already like that I have a voice entry feature cos I&#8217;ve been using gpt for it and get too lazy to create an actual GPT. I also like that I can tell it exactly how I want to track my nutrition and the different data points I want to take into account &#8211; where I am in my cycle, track my habits over a week, where my energy rises and crashes, log recipes so things can be repeatable, reminders to check in, track the time when I eat my meals and how to optimize that, and also when I work out. <\/p>\n<p>it makes me feel in control.  <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@arathy_kushalappa1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@arathy_kushalappa1<\/a>&nbsp;welcome to the Napkin Math community!<\/p>\n<p>My wife is Indian and it captures her family&#8217;s recipes quite accurately! And every time you log a meal, Napkin Math remembers it so you can reference it again. So if there are some extra ingredients maybe a photo can&#8217;t capture &#8211; write those down when submitting (or the whole ingredient list if you want) and every time you log it again, it will remember!<\/p>\n<p>You can also add a note after logging a meal to tweak anything like swapping between chicken and tofu or saying you added yogurt this time. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The photo-first approach is the smart part here. Most food trackers die on manual logging friction. I work on voice AI for older adults aging at home, and the same pattern shows up: any logging step that takes more than a few seconds just doesn&#8217;t happen. Curious how Napkin Math handles foods that are hard to read from one photo, like a mixed home-cooked dish or a drink. Does it ask a quick follow-up, or infer from context?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@igorgurovich\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@igorgurovich<\/a>&nbsp;Great question Igor! We do both!<\/p>\n<p>Napkin Math does a great job of identifying even complicated dished from a single photo and you can add text to explain even more of what is in the dish. For example, a photo of a plate of piroshki (top of mind because I had these recently) could also have text explaining they were filled with mushrooms.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>First off, I&#8217;m obssesed with your design. It&#8217;s so fun, so refreshing, and really represents your &#8220;food is joyful&#8221; motto. Not a designer, just a user tired of the &#8216;corporate minimalism&#8217; that at some point was everywhere (thankfully, it&#8217;s improving little by little). <\/p>\n<p>On the actual nutrition side, it&#8217;s really cool how your approach isn&#8217;t weight loss\/tracking calories. I&#8217;m an MD in a nutrition residency and getting people to <em>actually track everything <\/em>is such a challenge, even when they have extreme symptoms like you did. Often all you get is a list of meals, no portion, no preparation method, not even all the spices and sauces they used specified. Napkin Math seems like a great solution to that. <\/p>\n<p>My question is &#8211; you seem to be very focused on people helping themselves (with the help of AI). But do you plan to eventually make this available to healthcare providers? Plugging it into existing nutrition software or creating a provider portal where the physician\/dietitian can follow multiple patients, look at patterns, look at medications taken, too (because in many cases people are on medication, often medication that can also cause GI symptoms, and we&#8217;d want to track that) would be really cool.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@denitsapenchevavaltchanova\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@denitsapenchevavaltchanova<\/a>&nbsp;Ahh! Love that you like our design!<\/p>\n<p>And we absolutely want to work with healthcare providers &#8211; we have spoken to some nutritionists already but are seeking more to learn and work with. If you are interested I would love to connect find some time to chat about how we can help providers and patients with nutrition!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>amazing :))<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@connortbot\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@connortbot<\/a>&nbsp;thanks!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#9<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/EBDEG4ZUBC45CC\" class=\"app-title\">Monako Glass<\/a><\/p>\n<div class=\"one-liner\">Run AI coding agents hands-free from a heads-up display<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">148<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>Monako Glass \u662f\u4e00\u6b3e48\u514b\u91cd\u7684Linux\u667a\u80fd\u773c\u955c\uff0c\u901a\u8fc7\u6ce2\u5bfc\u663e\u793a\u5c4f\u3001\u9aa8\u4f20\u5bfc\u9ea6\u514b\u98ce\u548c\u624b\u52bf\u8bc6\u522b\uff0c\u8ba9\u5f00\u53d1\u8005\u80fd\u591f\u968f\u65f6\u968f\u5730\u514d\u63d0\u76d1\u63a7\u548c\u6307\u6325AI\u7f16\u7a0b\u4ee3\u7406\uff0c\u6446\u8131\u53f0\u5f0f\u673a\u675f\u7f1a\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <video class=\"media-content\" poster=\"https:\/\/ph-files.imgix.net\/c971b884-ea2a-44a1-8953-bebf6ed73b52.jpeg?auto=format\" data-video-url=\"https:\/\/www.youtube.com\/watch?v=E2LFzun60RE\"><source src=\"https:\/\/www.youtube.com\/watch?v=E2LFzun60RE\" type=\"video\/mp4\"><\/video><\/p>\n<div class=\"video-overlay\">\n<div class=\"play-icon\">\u25b6<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/e8b18346-06ea-46b9-bf41-042bd2df6e5f.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/8ac9d54d-70d5-461e-a2e8-2b15c820e3d2.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/eca1d1fa-cd0d-4357-bf2e-e5c5f73533e9.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/1ffab202-0dc6-4440-9130-2a54671277ea.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/8a124903-6027-4fa2-a19a-99dd807eabe6.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Virtual Reality<\/span><br \/>\n            <span class=\"tag\">Wearables<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">\u667a\u80fd\u773c\u955c<\/span><br \/>\n            <span class=\"tag\">AI\u7f16\u7a0b\u4ee3\u7406<\/span><br \/>\n            <span class=\"tag\">\u514d\u63d0\u5f00\u53d1<\/span><br \/>\n            <span class=\"tag\">\u53ef\u7a7f\u6234\u8ba1\u7b97<\/span><br \/>\n            <span class=\"tag\">Linux\u7cfb\u7edf<\/span><br \/>\n            <span class=\"tag\">\u5168\u8eab\u5524\u9192<\/span><br \/>\n            <span class=\"tag\">\u589e\u5f3a\u73b0\u5b9e<\/span><br \/>\n            <span class=\"tag\">\u5f00\u53d1\u8005\u5de5\u5177<\/span><br \/>\n            <span class=\"tag\">\u624b\u52bf\u4ea4\u4e92<\/span><br \/>\n            <span class=\"tag\">\u5f00\u6e90\u786c\u4ef6<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u666e\u904d\u770b\u597d\u8be5\u6982\u5ff5\uff0c\u8ba4\u4e3a\u514d\u63d0\u76d1\u63a7AI\u4ee3\u7406\u662f\u771f\u5b9e\u9700\u6c42\u3002\u6709\u6548\u8bc4\u8bba\u96c6\u4e2d\u5728\u7eed\u822a\u8212\u9002\u5ea6\uff08\u957f\u65f6\u4f69\u6234\u81ea\u7136\u611f\uff09\u3001\u663e\u793a\u5ef6\u8fdf\u3001\u8bed\u97f3\u4e0e\u624b\u52bf\u5b9e\u9645\u64cd\u4f5c\u65b9\u5f0f\uff0c\u4ee5\u53caMonoOS\u662f\u5426\u5f00\u6e90\uff08GPLv2\u8bb8\u53ef\uff09\u7684\u8d28\u7591\u3002\u6709\u7528\u6237\u5bf9\u5b9e\u73b0\u80fd\u529b\u8868\u793a\u89c2\u671b\uff0c\u5e0c\u671b\u88ab\u8bc1\u4f2a\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                Monako Glass\u8e29\u51c6\u4e86\u4e00\u4e2a\u771f\u5b9e\u4f46\u6781\u5176\u72ed\u7a84\u7684\u75db\u70b9\uff1aAI\u4ee3\u7406\u7684\u201c\u76d1\u62a4\u6743\u201d\u5fc5\u987b\u8131\u79bb\u684c\u9762\u3002\u5f53Claude Code\u6216Codex\u5728\u540e\u53f0\u81ea\u4e3b\u6267\u884c\u65f6\uff0c\u5f00\u53d1\u8005\u786e\u5b9e\u9700\u8981\u4e00\u79cd\u4f4e\u6210\u672c\u7684\u6ce8\u610f\u529b\u4fa7\u8f7d\u65b9\u5f0f\uff0c\u800c\u4e0d\u662f\u53cd\u590d\u5207\u5c4f\u3002\u8be5\u4ea7\u54c1\u9009\u62e9\u4e86\u7eaf\u7cb9\u7684\u751f\u4ea7\u529b\u5de5\u5177\u8def\u7ebf\uff0c\u907f\u5f00\u6d88\u8d39\u7ea7\u667a\u80fd\u773c\u955c\u7684\u5197\u4f59\u529f\u80fd\uff0c\u65b9\u5411\u6b63\u786e\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u4f46\u81f4\u547d\u95ee\u9898\u5728\u6280\u672f\u5b9e\u73b0\u4e0e\u65f6\u95f4\u7a97\u53e3\u30022026\u5e747\u6708\u624d\u53d1\u8d27\uff0c\u8ddd\u79bb\u73b0\u5728\u4e00\u5e74\u534a\u2014\u2014\u5c4a\u65f6\u652f\u6301AI\u4ee3\u7406\u7684\u786c\u4ef6\u751f\u6001\u5df2\u53ef\u80fd\u88abMeta Ray-Ban\u3001\u82f9\u679cVision Pro\u7684\u66f4\u8f7b\u91cf\u5316\u8fed\u4ee3\u4ea7\u54c1\uff0c\u4e43\u81f3\u624b\u673a\u7aef\u66f4\u6210\u719f\u7684\u514d\u63d0\u4ea4\u4e92\uff08\u5982\u8bed\u97f3+\u97f3\u9891\u8f93\u51fa\uff09\u5927\u5e45\u4fb5\u8680\u3002\u4e00\u4e2a48\u514b\u30014\u5c0f\u65f6\u7eed\u822a\u3001\u4ec50.5 TOPS NPU\u7684\u72ec\u7acbLinux\u7cfb\u7edf\uff0c\u80fd\u5426\u6d41\u7545\u8fd0\u884c\u672a\u6765\u65e5\u663e\u590d\u6742\u7684\u5927\u578b\u8bed\u8a00\u6a21\u578b\u4ee3\u7406\uff1f\u5176\u201cLua\u5e94\u7528\u5c42\u201d\u811a\u672c\u5316\u601d\u8def\u542c\u8d77\u6765\u806a\u660e\uff0c\u4f46\u5f00\u53d1\u8005\u662f\u5426\u613f\u610f\u4e3a\u8fd9\u4e2a\u4ec5\u9650\u4e8e\u201c\u76d1\u89c6\u4ee3\u7406\u201d\u7684\u573a\u666f\u518d\u6234\u4e00\u526f\u773c\u955c\uff0c\u4e14\u5fcd\u53d7\u53ef\u80fd\u7684\u5ef6\u8fdf\u548c\u8f93\u5165\u6548\u7387\u6298\u635f\uff0c\u975e\u5e38\u5b58\u7591\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u6b64\u5916\uff0c399\u7f8e\u5143\u5b9a\u4ef7\u5e76\u4e0d\u4f4e\uff0c\u4e14\u5f00\u6e90\u627f\u8bfa\u6a21\u7cca\uff08\u8bc4\u8bba\u5df2\u6307\u51faGPL\u5408\u89c4\u7591\u95ee\uff09\u3002\u5982\u679c\u6700\u7ec8\u5c01\u95ed\u6216\u4f9d\u8d56\u4e13\u5c5e\u751f\u6001\uff0c\u5c06\u529d\u9000\u5f00\u53d1\u8005\u7684\u6838\u5fc3\u7fa4\u4f53\u3002\u4ea7\u54c1\u89c6\u9891\u770b\u8d77\u6765\u9177\uff0c\u4f46\u771f\u6b63\u7684\u9a8c\u8bc1\u8981\u770b2026\u5e74\u53d1\u8d27\u65f6\uff0cAI\u4ee3\u7406\u672c\u8eab\u662f\u5426\u5df2\u8fdb\u5316\u5230\u65e0\u9700\u8fd9\u79cd\u4e2d\u95f4\u6001\u76d1\u63a7\uff0c\u6216\u8005\u76f8\u53cd\uff0c\u6070\u597d\u9700\u8981\u8fd9\u79cd\u786c\u89e3\u3002\u76ee\u524d\u5b83\u66f4\u50cf\u4e00\u4e2a\u7cbe\u5de7\u7684\u201c\u6280\u672f\u9884\u89c8\u201d\uff0c\u800c\u975e\u6210\u719f\u5546\u54c1\u3002\u8c28\u614e\u4e50\u89c2\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">Monako Glass<\/span>\n                <\/div>\n<div class=\"comment-content\">Monako Glass is a 48g wearable running Buildroot Linux with a waveguide display, bone conduction mic, and gesture input. Lets developers run Claude Code, Codex, or any coding agent hands-free from glasses. Reservation-only, ships July-August 2026.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Coding agents are powerful. Being chained to a desk to use them is not.<\/p>\n<\/p>\n<p><strong>Monako Glass<\/strong> is a 48g Linux computer built into a pair of glasses, designed to let developers run Claude Code, Codex, or any coding agent hands-free through a heads-up display.<\/p>\n<\/p>\n<p>Most smart glasses are built for consumers. Notifications, photos, music. Monako Glass is pointed the other direction entirely. The problem it solves is simple: agentic coding workflows demand attention, but that attention does not have to happen at a fixed screen. Monako puts a full Buildroot Linux OS, a waveguide display, and a bone conduction mic on your face so you can stay in the loop wherever you are.<\/p>\n<\/p>\n<p>Here is what you get:<\/p>\n<ul>\n<li>\n<p>\ud83d\udda5 Waveguide heads-up display on a 48g frame<\/p>\n<\/li>\n<li>\n<p>\ud83c\udfa4 Nasal-vibration bone conduction mic, built for loud environments<\/p>\n<\/li>\n<li>\n<p>\ud83d\udc4b Hand tracking and gesture input via onboard 0.5 TOPS NPU<\/p>\n<\/li>\n<li>\n<p>\ud83d\udc27 MonoOS: full Linux with a Lua app layer agents can write to and run instantly, no build step<\/p>\n<\/li>\n<li>\n<p>\ud83e\udd16 Claude Code, Codex, and any coding agent supported<\/p>\n<\/li>\n<li>\n<p>\ud83d\udd0b 300mAh battery, 4 hours screen-on, 8 hours normal use<\/p>\n<\/li>\n<\/ul>\n<p>Developers and AI researchers who run autonomous coding agents and want to stay connected to those workflows away from a desk will find the most immediate use for this.<\/p>\n<\/p>\n<p>Reservations are open at $19 toward a $399 unit, shipping July to August 2026. Check it out and reserve yours at <a href=\"http:\/\/monako.ai\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">monako.ai<\/a>.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>7<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The hardest part with AI agents is not only giving them tasks, but staying aware of what they\u2019re doing. A heads-up display could actually help with that.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>4<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@malani_willa\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@malani_willa<\/a>&nbsp;curious how  comfortable it is for longer sessions. Does the display feel natural after wearing it for a few hours?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@malani_willa\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@malani_willa<\/a>&nbsp;I like that this is built around a real workflow problem. if developers  can interact with agents naturally, this could open up new ways of working<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Where can I see the source code of MonoOS? Is it published on GPLv2 license?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This is a cool concept. The heads-up display for coding agents makes sense when you think about it, constantly looking away to check output breaks the flow. Curious how the latency feels in real use.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This looks super cool. Many companies are trying to build this type of tool. I&#8217;ve even purchased some in the past; many of them are in the garbage now. I love the concept. The video is super cool. I&#8217;m just not convinced you can build what you say you can build. Prove me wrong.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This is wild, agents running without being chained to the desk is a fun direction. How do you actually steer an agent from the glasses, is it mostly voice or the gesture input?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#10<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/MA2XPJNWOIIKHL\" class=\"app-title\">Axol<\/a><\/p>\n<div class=\"one-liner\">Automate physical work with a powerful robot<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">123<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>Axol\u662f\u4e00\u6b3e\u53cc\u673a\u68b0\u81c2\u7269\u7406AI\u673a\u5668\u4eba\uff0c\u4e13\u4e3a\u56e2\u961f\u89e3\u51b3\u771f\u5b9e\u5de5\u4f5c\u573a\u666f\u4e2d\u6570\u636e\u91c7\u96c6\u96be\u3001\u8fd0\u52a8\u53d7\u9650\u3001\u7ef4\u62a4\u7e41\u7410\u7b49\u75db\u70b9\uff0c\u5b9e\u73b0\u5305\u88c5\u3001\u53a8\u623f\u7b49\u4efb\u52a1\u7684\u81ea\u52a8\u5316\u4f5c\u4e1a\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/c7a976ed-d3da-49dd-bf28-63bde1beb977.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/6ec8c06e-50d3-4fad-a0f7-6fddef4980a5.webp?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/a24ad845-f412-4382-8480-de502a1f0a4c.webp?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <video class=\"media-content\" poster=\"https:\/\/ph-files.imgix.net\/ec99244f-c016-4fce-8c80-b1d485bf8178.jpeg?auto=format\" data-video-url=\"https:\/\/youtu.be\/WjcBwSufr7Q\"><source src=\"https:\/\/youtu.be\/WjcBwSufr7Q\" type=\"video\/mp4\"><\/video><\/p>\n<div class=\"video-overlay\">\n<div class=\"play-icon\">\u25b6<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Robots<\/span><br \/>\n            <span class=\"tag\">Developer Tools<\/span><br \/>\n            <span class=\"tag\">Artificial Intelligence<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">\u53cc\u673a\u68b0\u81c2\u673a\u5668\u4eba<\/span><br \/>\n            <span class=\"tag\">\u7269\u7406AI<\/span><br \/>\n            <span class=\"tag\">\u81ea\u52a8\u5316<\/span><br \/>\n            <span class=\"tag\">\u6570\u636e\u91c7\u96c6<\/span><br \/>\n            <span class=\"tag\">\u53a8\u623f\u81ea\u52a8\u5316<\/span><br \/>\n            <span class=\"tag\">\u673a\u5668\u4eba\u64cd\u4f5c\u7cfb\u7edf<\/span><br \/>\n            <span class=\"tag\">\u5f00\u6e90\u7b56\u7565<\/span><br \/>\n            <span class=\"tag\">\u8fdc\u7a0b\u64cd\u63a7<\/span><br \/>\n            <span class=\"tag\">\u5de5\u4e1a\u673a\u5668\u4eba<\/span><br \/>\n            <span class=\"tag\">\u4eba\u673a\u534f\u4f5c<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u5173\u6ce8\u9996\u5e94\u7528\u573a\u666f\uff08\u53a8\u623f\uff09\uff0c\u8be2\u95ee\u642d\u5efa\u8017\u65f6\uff08<1\u5c0f\u65f6\uff09\u3001\u8ba1\u7b97\u5e73\u53f0\uff08\u9700Linux+Nvidia GPU\uff09\u3001\u76f8\u673a\u914d\u7f6e\uff082-3\u4e2aZED\uff09\u3001\u5f00\u6e90\u7b56\u7565\uff08\u627f\u8bfa\u5f00\u6e90\u6743\u91cd\uff09\u3002\u5efa\u8bae\u52a0\u5f3aGitHub\u94fe\u63a5\uff0c\u671f\u5f85\u4efb\u52a1\u7b56\u7565\u5e93\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                Axol\u7684\u5b9a\u4f4d\u7cbe\u51c6\u5207\u5165\u4e86\u4e00\u4e2a\u4ea7\u4e1a\u65ad\u5c42\uff1a\u5e02\u9762\u4e0a\u591a\u6570\u5de5\u4e1a\u673a\u5668\u4eba\u662f\u4e3a\u201c\u6f14\u793a\u201d\u800c\u975e\u201c\u5e72\u6d3b\u201d\u8bbe\u8ba1\u7684\u3002\u53cc\u673a\u68b0\u81c2+\u957f\u81c2\u5c55+\u9ad8\u81ea\u7531\u5ea6\uff0c\u672c\u8d28\u662f\u5728\u6a21\u4eff\u4eba\u7c7b\u5de5\u4f4d\uff0c\u8fd9\u6bd4\u5355\u81c2\u65b9\u6848\u66f4\u80fd\u5904\u7406\u590d\u6742\u64cd\u4f5c\uff08\u5982\u53a8\u623f\u6446\u76d8\u3001\u5b9e\u9a8c\u5ba4\u5206\u88c5\uff09\u3002\u5176\u6838\u5fc3\u4ef7\u503c\u5e76\u975e\u786c\u4ef6\u53c2\u6570\uff0c\u800c\u662f\u201c\u964d\u4f4e\u7269\u7406AI\u7684\u95e8\u69db\u201d\u2014\u2014\u627f\u8bfa1\u5c0f\u65f6\u4e0a\u624b\u3001\u5f00\u6e90\u7b56\u7565\u6743\u91cd\u3001\u63d0\u4f9b\u5b8c\u6574\u6570\u636e\u91c7\u96c6\u6d41\u7a0b\uff0c\u8fd9\u624d\u662f\u771f\u6b63\u7684\u7ade\u4e89\u529b\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u4f46\u9700\u51b7\u9759\u770b\u5f85\u51e0\u4e2a\u98ce\u9669\uff1a\u7b2c\u4e00\uff0c\u58f0\u660e\u201c100\u53f0\/\u6708\u201d\u7684\u4ea7\u80fd\uff0c\u66b4\u9732\u51fa\u4f9b\u5e94\u94fe\u4ecd\u5904\u4e8e\u65e9\u671f\u8bd5\u4ea7\u9636\u6bb5\uff0c\u54c1\u63a7\u548c\u4ea4\u4ed8\u5468\u671f\u5b58\u7591\uff1b\u7b2c\u4e8c\uff0c\u4f9d\u8d56ZED\u76f8\u673a+Linux+Nvidia\u7684\u5c01\u95ed\u751f\u6001\uff0c\u867d\u964d\u4f4e\u5f00\u53d1\u96be\u5ea6\uff0c\u4f46\u589e\u52a0\u4e86\u786c\u4ef6\u7ed1\u5b9a\u6210\u672c\uff1b\u7b2c\u4e09\uff0c\u7528\u6237\u671f\u5f85\u7684\u201c\u5f00\u6e90\u7b56\u7565\u5e93\u201d\u76ee\u524d\u4ec5\u662f\u53e3\u5934\u627f\u8bfa\uff0c\u7f3a\u4e4f\u5177\u4f53\u8def\u7ebf\u56fe\u3002\u6700\u81f4\u547d\u7684\u662f\uff0c\u56e2\u961f\u805a\u7126\u53a8\u623f\u573a\u666f\uff0c\u5374\u672a\u7ed9\u51fa\u4efb\u4f55\u4e0e3D\u89c6\u89c9\u3001\u98df\u54c1\u7ea7\u6750\u6599\u76f8\u5173\u7684\u6280\u672f\u7ec6\u8282\u2014\u2014\u673a\u5668\u4eba\u76f4\u63a5\u5904\u7406\u98df\u6750\u7684\u5408\u89c4\u6027\u4e0e\u536b\u751f\u6807\u51c6\u53ef\u80fd\u6210\u4e3a\u9690\u5f62\u5929\u82b1\u677f\u3002\n            <\/p>\n<p class=\"ai-content\">\n                Axol\u66f4\u50cf\u662f\u5bf9Almond\u56e2\u961f\u8fc7\u5f80\u6298\u817e\u7684\u201c\u62a5\u590d\u6027\u521b\u4e1a\u201d\uff1a\u7528\u5927\u91cf\u73b0\u5b9e\u75db\u70b9\u53cd\u63a8\u8bbe\u8ba1\u3002\u4f46\u201c\u771f\u5b9e\u5de5\u4f5c\u201d\u7684\u7ec8\u6781\u8003\u9a8c\u5728\u4e8e\u6545\u969c\u6062\u590d\u3001\u5b89\u5168\u5197\u4f59\u548c\u89c4\u6a21\u5316\u540e\u7684\u6210\u672c\u63a7\u5236\u3002\u5982\u679c\u4ec5\u9760\u65e7\u91d1\u5c71\u7ec4\u88c5\u7684\u60c5\u6000\u548c\u7075\u6d3b\u624b\u81c2\uff0c\u5b83\u5145\u5176\u91cf\u662f\u9ad8\u7ea7\u7814\u7a76\u5e73\u53f0\uff1b\u82e5\u60f3\u771f\u6b63\u66ff\u4ee3\u4eba\u5de5\uff0c\u5fc5\u987b\u63d0\u4f9b\u53ef\u9a8c\u8bc1\u7684ROI\u6570\u636e\u2014\u2014\u6bd4\u5982\u4e00\u53f0Axol\u80fd\u5426\u7701\u63892\u4e2a\u53a8\u623f\u5e2e\u5de5\uff1f\u76ee\u524d\u8bc4\u8bba\u91cc\u5145\u6ee1\u79d1\u6280\u4e50\u89c2\u4e3b\u4e49\uff0c\u4f46\u7f3a\u4e86\u6700\u8be5\u6709\u7684\u201c\u9879\u76ee\u7ecf\u7406\u5f0f\u51b7\u9177\u63d0\u95ee\u201d\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">Axol<\/span>\n                <\/div>\n<div class=\"comment-content\">Axol is a dual-arm robot designed for teams automating real work with physical AI. Easy data collection, long reach, and a high range of motion means you can automate work that matters.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Hi folks, I&#8217;m one of the co-founders of Almond! A year ago, we were in grocery stores and factories trying to get robots to do actual work, but the process kept breaking.<\/p>\n<p>Data collection was just too hard. Reach and payload was limited. Motion constraints and singularities reduced our usable workspace. Cables and components failed. Parts broke but support was slow.<\/p>\n<p>We realized most robots we used were built for demos, not real work. That&#8217;s why we built our own.<\/p>\n<p>Axol is the robot we wish we had. Super excited to hear everyone&#8217;s feedback.<\/p>\n<p>P.S. Axol is assembled in San Francisco so we so we can be there for you when it matters.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>5<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@saba_k\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@saba_k<\/a>&nbsp;Really cool to see physical AI becoming more accessible. The combination of dual arms, long reach, and easier data collection makes this feel like something teams can actually deploy for useful tasks, not just demos. Excited to see what people build with Axol. \ud83e\udd16\ud83d\ude80<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>What\u2019s the first job you\u2019re seeing teams automate with Axol, packaging, lab work, or something else?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@thamibenjelloun\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@thamibenjelloun<\/a>&nbsp;The first few folks we&#8217;ve been talking to happen to focused on kitchens.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the launch! Been following on X \/ Twitter and this is really exciting. Been looking for something in the robotics space I can justify buying for the price of a couple Vision Pros or how much I minimum put into my PCs. I really think this is the future and want to understand how to do more. Some layman questions:<\/p>\n<ul>\n<li>\n<p>Do I need 3 Zed X cameras to make my tasks work well? Could I buy just one? I see the kit has one for each arm plus the overhead<\/p>\n<\/li>\n<li>\n<p>&#8220;onboard compute&#8221; for the Axol Kit &#8211; can I run this from my desktop or laptop with some kind of cable? Do I need a separate compute box for it?<\/p>\n<\/li>\n<li>\n<p>Will you open source different policies we can run out of the box as time goes on? My vision is to be able to hook it up to my agentic harnesses via MCP or a cli channel and be able to remotely prompt my Axol to do specific tasks for me<\/p>\n<\/li>\n<li>\n<p>Can the stand be remote controlled or do I need to move it myself? Looks like the latter. In that case, I could potentially build my own for moving it around&#8230;. At 19.5 kg (42 pounds), I think I could put it on top of some of the remote controlled vehicles I&#8217;ve played with. The stand is what seems the most swappable right now but correct me if I&#8217;m wrong and support is its own challenge<\/p>\n<\/li>\n<\/ul>\n<p>I&#8217;d also love to see the Github repo link more prominent on your website. Took me a bit to find it. It&#8217;d be SO COOL to have a repo of task policies that are already trained I could use out of the box, with all the necessary caveats, etc. Would be a super cool open source ecosystem to create so I can easily flip depending on the task and have my agentic harness handle the switching between policies for me as the more general decision maker. Especially given the reach and flexibility in range of motion. I may not be your target customer with these questions and thoughts but I&#8217;m excited about the potential and look forward to learning more. I&#8217;m more a TARS guy than an iRobot guy so keep at it.<\/p>\n<p>Edit: Task policies would be similar to loading skills for harnesses I imagine.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@conoremclaughlin\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@conoremclaughlin<\/a>&nbsp;Thank you!<\/p>\n<p>re: 3 cameras: You can probably get away with 2 wrist cameras (this is what generalist does) but 1 head camera + 2 wrist cameras is how folks often do training. I like to think of the wrist cameras as a clever way to replace touch since robots don&#8217;t have it yet. You can also try 1 head camera + torque feedback and see how it goes, our API supports it.<\/p>\n<p>re: We only support linux right now so you can run it from any linux box. That said, the ZED cameras require Nvidia GPUs so the ZED Boxes are the perfect compute module for the application (linux + GPU)<\/p>\n<p>re: We&#8217;d love to! As we train Axol on tasks internally, we will open source the weights.<\/p>\n<p>re: The stand is fixed but has locking wheels. Yes you can mount it anywhere you need. The mounting holes are in the datasheet.<\/p>\n<p>agreed on the github link, we&#8217;ll fix that now!<\/p>\n<p>And YES having models fine tuned that an agent can select between would be amazing. As we get more Axol&#8217;s into people&#8217;s hands we&#8217;ll make this happen.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the launch. Dual arms with long reach is a smart starting point. The tasks that actually need automating in real workflows usually require both range and precision together. Curious what industries are getting the most use out of it so far.  <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@oliverbuilds\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@oliverbuilds<\/a>&nbsp;Thank you! The first few folks we&#8217;ve been talking to happen to be focused on kitchens.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p><em>obotics + AI Dev Tools combo is interesting \u00b7 what&#8217;s the typical setup time for non-roboticists?<\/em><\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@marcelo_vegas\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@marcelo_vegas<\/a>&nbsp;Less than an hour! The kit comes everything you need to collect data &amp; deploy a policy.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats! \u2b50\ufe0f How many Axols can your factory make in a week?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@amanda_gao2\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@amanda_gao2<\/a>&nbsp;Thanks! We&#8217;re able to ramp up production to 100s of Axols a month.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the launch! \ud83d\ude80 Building robots for real-world work instead of demos is a challenge many teams can relate to. Wishing you a successful Product Hunt day!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@alina_tyslenok_\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@alina_tyslenok_<\/a>&nbsp;Thank you! We&#8217;re excited to work closely with such teams.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#11<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/3FDQA4QB5PWEL7\" class=\"app-title\">BlenderHunt<\/a><\/p>\n<div class=\"one-liner\">The indie marketplace for Blender artists and creators<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">123<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>BlenderHunt \u662f\u4e00\u4e2a\u9762\u5411 Blender \u827a\u672f\u5bb6\u7684\u72ec\u7acb\u521b\u4f5c\u8005\u5e02\u573a\uff0c\u5e2e\u52a9\u7528\u6237\u53d1\u73b0\u3001\u8d2d\u4e70\u5e76\u9500\u552e\u7ecf\u8fc7\u4eba\u5de5\u5ba1\u6838\u7684\u63d2\u4ef6\u3001\u8d44\u4ea7\u3001\u6750\u8d28\u4e0e\u5de5\u5177\uff0c\u89e3\u51b3\u72ec\u7acb\u5356\u5bb6\u5728\u5927\u578b\u8d44\u4ea7\u5546\u5e97\u4e2d\u96be\u4ee5\u88ab\u53d1\u73b0\u7684\u95ee\u9898\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/6d478ca2-065e-4240-89f4-a778229f10c8.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/4dc85dc5-bde4-48ad-8d66-0dee93d51d61.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/2bd27169-0301-4ef4-a56f-cfdddf61a214.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/0650e6bc-15d6-4518-ae7d-40e42078fc45.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/1832c888-24d7-4bd9-9680-93ff3556749d.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/aece0e7a-f465-4168-b9ff-d4e4a21512a1.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/0b8080ec-a9b2-4786-957f-cc2e7addb3da.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/cfd92bed-5b0a-4041-ae9c-d0b8c71c6c86.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Design Tools<\/span><br \/>\n            <span class=\"tag\">Tech<\/span><br \/>\n            <span class=\"tag\">3D Modeling<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Blender \u5e02\u573a<\/span><br \/>\n            <span class=\"tag\">3D\u8d44\u4ea7<\/span><br \/>\n            <span class=\"tag\">\u63d2\u4ef6\u4ea4\u6613<\/span><br \/>\n            <span class=\"tag\">\u72ec\u7acb\u521b\u4f5c\u8005<\/span><br \/>\n            <span class=\"tag\">\u4eba\u5de5\u5ba1\u6838<\/span><br \/>\n            <span class=\"tag\">\u521b\u4f5c\u8005\u7ecf\u6d4e<\/span><br \/>\n            <span class=\"tag\">\u6570\u5b57\u5de5\u5177<\/span><br \/>\n            <span class=\"tag\">\u7d20\u6750\u5e73\u53f0<\/span><br \/>\n            <span class=\"tag\">\u793e\u533a\u9a71\u52a8<\/span><br \/>\n            <span class=\"tag\">3D\u5efa\u6a21<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u8d5e\u8d4f\u5176\u201c\u72ec\u7acb\u5e02\u573a\u201d\u5b9a\u4f4d\uff0c\u5e76\u5173\u6ce8\u5ba1\u6838\u673a\u5236\uff08\u662f\u5426\u4eba\u5de5\u6d4b\u8bd5\u6bcf\u6b3e\u63d2\u4ef6\uff09\u3001\u5356\u5bb6\u5165\u9a7b\u6d41\u7a0b\u3001\u7248\u672c\u517c\u5bb9\u6027\u9a8c\u8bc1\u65b9\u5f0f\u4ee5\u53ca\u8054\u7cfb\u6e20\u9053\u3002\u90e8\u5206\u7528\u6237\u56e0UI\u590d\u6742\u800c\u683c\u5916\u8ba4\u53ef\u8be5\u5e02\u573a\u5bf9\u975e\u4e13\u4e1a\u7528\u6237\u7684\u5e2e\u52a9\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                BlenderHunt \u5207\u4e2d\u4e86\u4e00\u4e2a\u660e\u786e\u800c\u62e5\u6324\u7684\u75db\u70b9\uff1aBlender \u751f\u6001\u4e2d\u72ec\u7acb\u521b\u4f5c\u8005\u7684\u4f5c\u54c1\u5f80\u5f80\u6c89\u6ca1\u5728 Blendermarket\u3001Gumroad \u7b49\u5927\u578b\u5e73\u53f0\u7684\u4fe1\u606f\u6d2a\u6d41\u91cc\uff0c\u66dd\u5149\u4e0e\u4fe1\u4efb\u96be\u4ee5\u517c\u5f97\u3002\u8be5\u4ea7\u54c1\u4ee5\u201c\u4eba\u5de5\u5ba1\u6838\u6bcf\u6b3e\u63d2\u4ef6\u201d\u4f5c\u4e3a\u6838\u5fc3\u5dee\u5f02\u70b9\uff0c\u8fd9\u6bd4\u5355\u7eaf\u9760\u793e\u533a\u6295\u7968\u66f4\u91cd\u3001\u4e5f\u66f4\u503c\u94b1\u2014\u2014\u5b83\u76f4\u63a5\u56de\u5e94\u4e86\u7528\u6237\u5728\u8bc4\u8bba\u4e2d\u53cd\u590d\u63d0\u53ca\u7684\u201c\u7248\u672c\u517c\u5bb9\u6027\u201d\u548c\u201c\u8d28\u91cf\u53ef\u9760\u6027\u201d\u7126\u8651\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u4f46\u201c\u9510\u201d\u5728\u4e8e\uff1a\u5ba1\u6838\u6210\u672c\u9ad8\u6602\uff0c\u4e00\u65e6\u89c4\u6a21\u6269\u5927\uff0c\u4eba\u5de5\u6d4b\u8bd5\u5c31\u4f1a\u6210\u4e3a\u74f6\u9888\uff0c\u8981\u4e48\u964d\u4f4e\u6807\u51c6\u635f\u5bb3\u54c1\u724c\uff0c\u8981\u4e48\u6da8\u4ef7\u8f6c\u5ac1\u6210\u672c\uff0c\u800c\u76ee\u524d\u5b9a\u4ef7\u7b56\u7565\u4e0e\u5546\u4e1a\u6a21\u5f0f\u5e76\u672a\u5728\u4ecb\u7ecd\u4e2d\u660e\u786e\u3002\u6b64\u5916\uff0c\u5e73\u53f0\u73b0\u6709\u7684\u8bc4\u8bba\u4e92\u52a8\u70ed\u5ea6\u504f\u4f4e\uff0c\u591a\u6570\u662f\u5ba2\u5957\u70b9\u8d5e\u4e0e\u5b98\u65b9\u81ea\u56de\uff0c\u7f3a\u4e4f\u771f\u5b9e\u7528\u6237\u4e4b\u95f4\u7684\u53e3\u7891\u6c89\u6dc0\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u957f\u8fdc\u770b\uff0cBlenderHunt \u7684\u771f\u6b63\u4ef7\u503c\u4e0d\u5728\u4e8e\u201c\u53c8\u4e00\u4e2a\u5e02\u573a\u201d\uff0c\u800c\u5728\u4e8e\u80fd\u5426\u6210\u4e3a Blender \u72ec\u7acb\u521b\u4f5c\u8005\u7684\u4fe1\u4efb\u951a\u70b9\u2014\u2014\u5982\u679c\u5b83\u80fd\u6301\u7eed\u8f93\u51fa\u201c\u4e0a\u67b6\u5fc5\u6d4b\u3001\u7248\u672c\u5fc5\u9a8c\u3001\u552e\u540e\u5fc5\u5e94\u201d\u7684\u786e\u5b9a\u6027\uff0c\u5c31\u8db3\u4ee5\u5728\u5de8\u5934\u5939\u7f1d\u4e2d\u517b\u51fa\u4e00\u4e2a\u9ad8\u7c98\u6027\u793e\u533a\u3002\u5426\u5219\uff0c\u5b83\u53ea\u662f\u53e6\u4e00\u4e2a\u7cbe\u7f8e\u4f46\u55a7\u56a3\u7684\u8d27\u67b6\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">BlenderHunt<\/span>\n                <\/div>\n<div class=\"comment-content\">A curated marketplace for Blender creators to discover, sell, and purchase high-quality addons, assets, materials, and tools from independent artists worldwide.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">Ready to start selling? Get started at <a href=\"https:\/\/blenderhunt.com\/sell\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/blenderhunt.com\/sell<\/a> and begin earning from your creations.<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@egret_studio\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@egret_studio<\/a>&nbsp;Hi there \ud83d\ude42 I upvote to support the community spirit of the product. Wish all blenderers all the best\u2728<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>A curated indie marketplace just for Blender creators is a smart niche \u2014 discoverability is the real pain when you&#8217;re an independent seller competing in giant asset stores. How are you handling curation as you scale, human review of each addon\/asset or community-led? Rooting for tools that put solo artists first.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>I have a huge respect for anybody working with that program. And probably no more, since it is not easy to use. In other words&#8230; great thing that a marketplace for them was created, so output can be finalised by professionals and deals between demand and offer \ud83d\ude42 <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p><em>Love the indie marketplace angle \u00b7 how do you handle creator onboarding\/curation balance?<\/em><\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Would love to understand your business but can&#8217;t seem to find any contact mails. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@samagra_gune\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@samagra_gune<\/a>&nbsp;Hi, there is support center on the landing page, thanks.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Version support is usually the first thing I check before buying a Blender addon, especially when I&#8217;m between Blender releases. For curated listings, do you actually test each addon against the stated Blender versions before it goes live, or is that still seller-declared?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@novamaker01\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@novamaker01<\/a>&nbsp;Hi Felix, Each addon is tested and reviewed internally before goes live, a seller specifies which version of Blender their extension is compatible with.<\/p>\n<p>Thanks<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#12<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/VBYGJCKDHUYJ33\" class=\"app-title\">SeaTicket<\/a><\/p>\n<div class=\"one-liner\">Al agent that resolves issues across all your channels<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">119<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>SeaTicket\u901a\u8fc7AI\u4ee3\u7406\u5c06\u6563\u843d\u5728GitHub\u3001Discourse\u548c\u90ae\u4ef6\u4e2d\u7684\u95ee\u9898\u540c\u6b65\u5230\u4e00\u4e2a\u5de5\u4f5c\u533a\uff0c\u89e3\u51b3\u8f6f\u4ef6\u56e2\u961f\u56e0\u6e20\u9053\u788e\u7247\u5316\u5bfc\u81f4\u7684\u4e0a\u4e0b\u6587\u4e22\u5931\u548c\u53cd\u9988\u4f4e\u6548\u75db\u70b9\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/83433106-0be4-4195-a829-c2ed310f90e3.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/8ced4142-6833-424a-9996-c0e7f4291d9c.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/84606d15-e129-41f0-b2e8-172e41faf5a7.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/1a7b32ab-4569-4965-a81e-e4f480291c89.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/aef0a878-e4fc-489d-b0a3-7f7f459c159d.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/68b1e89c-9924-45d2-bb2c-0aaa2b3fe174.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <video class=\"media-content\" poster=\"https:\/\/ph-files.imgix.net\/e8a134e6-20ab-43d2-b2ec-8bc078a17560.jpeg?auto=format\" data-video-url=\"https:\/\/www.youtube.com\/watch?v=FjAtioyJfZI\"><source src=\"https:\/\/www.youtube.com\/watch?v=FjAtioyJfZI\" type=\"video\/mp4\"><\/video><\/p>\n<div class=\"video-overlay\">\n<div class=\"play-icon\">\u25b6<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Productivity<\/span><br \/>\n            <span class=\"tag\">Artificial Intelligence<\/span><br \/>\n            <span class=\"tag\">GitHub<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">AI\u5ba2\u670d<\/span><br \/>\n            <span class=\"tag\">\u5de5\u5355\u7ba1\u7406<\/span><br \/>\n            <span class=\"tag\">\u5f00\u53d1\u8005\u5de5\u5177<\/span><br \/>\n            <span class=\"tag\">\u793e\u533a\u652f\u6301<\/span><br \/>\n            <span class=\"tag\">\u4e0a\u4e0b\u6587\u805a\u5408<\/span><br \/>\n            <span class=\"tag\">\u95ee\u9898\u8ffd\u8e2a<\/span><br \/>\n            <span class=\"tag\">\u81ea\u52a8\u4fee\u590d\u5efa\u8bae<\/span><br \/>\n            <span class=\"tag\">SaaS<\/span><br \/>\n            <span class=\"tag\">\u534f\u540c\u529e\u516c<\/span><br \/>\n            <span class=\"tag\">\u77e5\u8bc6\u590d\u7528<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u666e\u904d\u8ba4\u53ef\u8de8\u6e20\u9053\u4e0a\u4e0b\u6587\u6574\u5408\u4ef7\u503c\uff0c\u6838\u5fc3\u7591\u95ee\u96c6\u4e2d\u5728AI\u4ee3\u7406\u7684\u8fb9\u754c\uff1a\u80fd\u5426\u4e3b\u52a8\u6267\u884c\u72b6\u6001\u53d8\u66f4\u3001\u5904\u7406\u591a\u56e0\u75c7\u72b6\u65f6\u5982\u4f55\u63a8\u7406\uff0c\u4ee5\u53ca\u4e0a\u4e0b\u6587\u68c0\u7d22\u662f\u5426\u4f9d\u8d56\u5411\u91cf\u641c\u7d22+\u91cd\u6392\u5e8f\u3002\u6709\u8bc4\u8bba\u6307\u51fa\u788e\u7247\u5316\u4e0d\u4ec5\u662f\u5de5\u5177\u95ee\u9898\uff0c\u66f4\u7834\u574f\u7528\u6237\u4fe1\u4efb\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                SeaTicket\u5207\u5165\u4e86\u4e00\u4e2a\u771f\u5b9e\u4e14\u75db\u82e6\u7684\u573a\u666f\u2014\u2014\u8f6f\u4ef6\u793e\u533a\u652f\u6301\u4e2d\u7684\u6e20\u9053\u788e\u7247\u5316\u4e0e\u4e0a\u4e0b\u6587\u65ad\u88c2\u3002\u5176\u6838\u5fc3\u4eae\u70b9\u4e0d\u5728\u4e8e\u201c\u805a\u5408\u201d\uff0c\u800c\u5728\u4e8e\u7528AI\u4ee3\u7406\u5c06\u805a\u5408\u540e\u7684\u5386\u53f2\u6570\u636e\u8f6c\u5316\u4e3a\u4e3b\u52a8\u89e3\u51b3\u95ee\u9898\u7684\u80fd\u529b\uff0c\u8fd9\u6bd4\u5355\u7eaf\u7684\u5de5\u5355\u6574\u5408\u5de5\u5177\u9ad8\u4e00\u4e2a\u7ef4\u5ea6\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u4ece\u8bc4\u8bba\u770b\uff0c\u56e2\u961f\u5728\u6280\u672f\u8def\u7ebf\u4e0a\u9009\u62e9\u4e86\u201c\u5173\u952e\u8bcd+\u5411\u91cf\u641c\u7d22+LLM\u91cd\u6392\u5e8f\u201d\u7684\u591a\u8f6e\u68c0\u7d22\u7b56\u7565\uff0c\u5e76\u660e\u786eAI\u4ee3\u7406\u5728\u72b6\u6001\u53d8\u66f4\u4e0a\u53ef\u81ea\u52a8\u6267\u884c\uff0c\u56de\u590d\u5219\u9700\u4eba\u5de5\u5ba1\u6838\u3002\u8fd9\u79cd\u201c\u534a\u81ea\u4e3b\u201d\u8bbe\u8ba1\u65e2\u964d\u4f4e\u4e86\u91cd\u590d\u52b3\u52a8\uff0c\u53c8\u89c4\u907f\u4e86AI\u56de\u590d\u5931\u63a7\u7684\u98ce\u9669\uff0c\u662f\u52a1\u5b9e\u7684\u8fb9\u754c\u5212\u5206\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u7136\u800c\uff0c\u4ea7\u54c1\u9762\u4e34\u4e24\u9879\u6311\u6218\u3002\u4e00\u662f**\u7ade\u4e89\u58c1\u5792**\uff1aGitHub Issues\u539f\u751f\u96c6\u6210\u3001Zendesk\u7b49\u6210\u719f\u5de5\u5177\u5df2\u6709\u7c7b\u4f3c\u63d2\u4ef6\uff0cSeaTicket\u7684\u5dee\u5f02\u5316\u5728\u4e8e\u5bf9\u201c\u975e\u6807\u51c6\u6e20\u9053\u201d\uff08\u5982Discourse\u3001\u90ae\u4ef6\uff09\u7684\u6df1\u5ea6\u89e3\u6790\uff0c\u4f46\u8fd9\u9700\u8981\u6781\u5f3a\u7684\u89e3\u6790\u548c\u5b9e\u4f53\u5173\u8054\u80fd\u529b\u3002\u4e8c\u662f**\u7528\u6237\u4fe1\u4efb**\uff1a\u4ece\u8bc4\u8bba\u770b\uff0c\u7528\u6237\u5bf9\u4e8eAI\u4f55\u65f6\u201c\u53ea\u5efa\u8bae\u201d\u4f55\u65f6\u201c\u76f4\u63a5\u6267\u884c\u201d\u4ecd\u6709\u7591\u8651\u3002\u82e5AI\u7684\u81ea\u4fe1\u5ea6\u5224\u65ad\u4e0d\u51c6\uff0c\u53ef\u80fd\u4f1a\u5f15\u53d1\u66f4\u591a\u9519\u8bef\u800c\u975e\u63d0\u6548\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u771f\u6b63\u4ef7\u503c\u5728\u4e8e\uff0c\u5b83\u8bd5\u56fe\u5c06\u201c\u6bcf\u6b21\u652f\u6301\u90fd\u53d8\u6210\u4e00\u6b21\u77e5\u8bc6\u79ef\u7d2f\u201d\uff0c\u8ba9\u5386\u53f2\u95ee\u9898\u6210\u4e3a\u6d3b\u8d44\u4ea7\u3002\u4f46\u524d\u63d0\u662f\u56e2\u961f\u80fd\u6301\u7eed\u4f18\u5316LLM\u53ec\u56de\u4e0e\u5f52\u56e0\u7684\u51c6\u786e\u6027\uff0c\u5426\u5219\u201c\u5168\u4e0a\u4e0b\u6587\u201d\u5f88\u5bb9\u6613\u53d8\u6210\u201c\u5168\u566a\u58f0\u201d\u3002\u5bf9\u4e8e\u9884\u7b97\u7d27\u5f20\u3001\u6e20\u9053\u7eb7\u6742\u7684\u4e2d\u5c0f\u5f00\u6e90\u56e2\u961f\uff0c\u8fd9\u662f\u4e00\u4e2a\u503c\u5f97\u5c1d\u8bd5\u7684\u589e\u6548\u5de5\u5177\uff1b\u800c\u5bf9\u4e8e\u8ffd\u6c42\u96f6\u5931\u8bef\u7684\u4f01\u4e1a\u7ea7\u652f\u6301\uff0c\u5b83\u4ecd\u9700\u8bc1\u660e\u81ea\u5df1\u7684\u53ef\u9760\u6027\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">SeaTicket<\/span>\n                <\/div>\n<div class=\"comment-content\">Software teams are drowning in a sea of fragmented issues across GitHub, Discourse and emails. Valuable feedback is often buried under noise. SeaTicket transforms community support by syncing these into a single workspace. What makes it different? Full Context: Bring related issues and documents when solving an issue. AI Agents: Built-in agents autonomously suggest resolutions using existing documents and previous issues. Stop digging for context. Start resolving.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Hey Product Hunt! \ud83d\udc4b<\/p>\n<p>I\u2019m Daniel Pan, Co-founder of Seafile, and I\u2019d like to introduce SeaTicket, which came from a problem we lived with for years.<\/p>\n<p>Through years of community support, we saw how scattered channels turn into lost context and slower teams. So, we built SeaTicket for teams that are tired of losing things, whether that\u2019s time, context, or the trust of the users they\u2019re trying to help.<\/p>\n<p>With SeaTicket, your team finally gets to:<\/p>\n<ul>\n<li>\n<p>\ud83e\udde0 <strong>Focus on solving, not searching<\/strong><\/p>\n<p>spend your energy on the problem in front of you, not hunting for context across tools<\/p>\n<\/li>\n<li>\n<p>\u26a1 <strong>Move faster without more people<\/strong><\/p>\n<p>handle more issues, at higher quality, without growing your headcount to match<\/p>\n<\/li>\n<li>\n<p>\ud83d\udd01 <strong>Get smarter with every issue you close<\/strong><\/p>\n<p>your past work actively improves how you handle future problems<\/p>\n<\/li>\n<li>\n<p>\ud83d\udc65 <strong>Keep everyone on the same page<\/strong><\/p>\n<p>support, engineering, and product working with full shared context, no handoff friction<\/p>\n<\/li>\n<li>\n<p>\ud83e\udd1d <strong>Build real trust with your users<\/strong><\/p>\n<p>give them visibility, consistency, and fast answers instead of silence<\/p>\n<\/li>\n<\/ul>\n<p><strong>The result: <\/strong>less chaos, more clarity, and a support experience your users actually appreciate.<\/p>\n<\/p>\n<p>Try SeaTicket for free with no credit card required.<\/p>\n<\/p>\n<p>From Daniel Pan (Co-founder), SeaTicket team<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>11<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The fragmented issues problem is real. Same question comes in across GitHub, email and Discourse and each one gets handled separately with no shared context. Pulling it all into one place before you respond is the part that actually saves time. Good luck with the launch.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>I like the idea that every resolved ticket makes the next one easier. Support history usually just sits there, so turning it into active context is a solid move.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">The context loss problem is interesting because it\u2019s not just a tooling problem, it\u2019s a relationship problem. Every time a user has to re-explain their issue, the implicit message is \u2018we don\u2019t remember you.\u2019 Congrats on the launch!<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@dani_mashael\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@dani_mashael<\/a>&nbsp;Thank you for the support!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the launch. The cross-channel context piece is very real, especially when GitHub, Discourse and email all describe the same issue slightly differently.<\/p>\n<p>The bit I am curious about is where you draw the line between suggesting a resolution and taking action. For example, when the agent has enough confidence, does it only draft the reply, or can it also update GitHub state, close\/merge linked issues, or send the customer response? And if it can act, do you model approvals or audit per workspace\/customer?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@blah_mad\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@blah_mad<\/a>&nbsp;For changing state and assign labels, it can be done without approvals. For response, it is better for a manual review and approve.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Bringing full context into the resolution flow is the right call. Most support tools surface the ticket but not the relevant prior issues or docs. We&#8217;ve dealt with this fragmentation problem building customer-facing workflows. How does the context retrieval work under the hood? Is it vector search over your issue history, or do you use a graph structure to connect related threads?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@retain_dev\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@retain_dev<\/a>&nbsp;In SeaTicket, we utilize both keywords and vectors to identify relevant issues, followed by re-ranking using an LLM. This approach ensures that the search results are highly accurate.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Bridging a support ticket to actual GitHub context is the right call. Most ticket tools stop at tagging; getting the agent to trace a user report to a code path changes the quality of the response entirely. We&#8217;ve built similar plumbing in-house and the context assembly is the hard part. How does the agent handle cases where one symptom maps to multiple possible root causes?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@anand_thakkar1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@anand_thakkar1<\/a>&nbsp;In SeaTicket, we first define a search tool that, upon receiving a query, identifies relevant issues and documents, followed by a re-ranking process using a large language model (LLM). This approach guarantees that the search results are highly accurate.<\/p>\n<p>When presented with an issue, the AI agent will invoke the search tool multiple times with different queries until it believes it has gathered sufficient information to address the issue. Therefore, if the AI model is sufficiently powerful, it can reason about the answer even if one symptom can correspond to multiple potential root causes.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#13<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/3E4FWZNWXIXXFT\" class=\"app-title\">veridive<\/a><\/p>\n<div class=\"one-liner\">Find the 30 seconds that matter in any video via chat<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">113<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>veridive \u901a\u8fc7AI\u5bf9\u8bdd\u5f0f\u641c\u7d22\uff0c\u8ba9\u7528\u6237\u80fd\u5728YouTube\u3001\u64ad\u5ba2\u3001\u8bb2\u5ea7\u7b49\u6d77\u91cf\u89c6\u9891\u4e2d\uff0c\u4ee5\u63d0\u95ee\u65b9\u5f0f\u7cbe\u51c6\u5b9a\u4f4d\u5230\u5173\u952e\u4fe1\u606f\u51fa\u73b0\u7684\u5177\u4f53\u79d2\u6570\uff0c\u5e76\u9644\u4e0a\u53ef\u70b9\u51fb\u8df3\u8f6c\u7684\u5f15\u7528\u6765\u6e90\uff0c\u5f7b\u5e95\u89e3\u51b3\u201c\u5237\u957f\u89c6\u9891\u627e\u7b54\u6848\u201d\u7684\u6548\u7387\u75db\u70b9\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/49171e18-f8b0-4bd9-8395-802ea61d54d2.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/06e0c42e-40af-4b73-9ee0-17cd0869a501.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/8abe13b4-38a5-4356-ba5b-d10445a27e79.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/2ef9051c-7ae6-4189-ae9f-431eab9f5698.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/f20888c9-57e5-4998-8dc7-9dbf446b8f78.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Productivity<\/span><br \/>\n            <span class=\"tag\">YouTube<\/span><br \/>\n            <span class=\"tag\">Search<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">\u89c6\u9891\u641c\u7d22<\/span><br \/>\n            <span class=\"tag\">AI\u95ee\u7b54<\/span><br \/>\n            <span class=\"tag\">\u64ad\u5ba2\u641c\u7d22<\/span><br \/>\n            <span class=\"tag\">\u5185\u5bb9\u6316\u6398<\/span><br \/>\n            <span class=\"tag\">\u77e5\u8bc6\u7ba1\u7406<\/span><br \/>\n            <span class=\"tag\">\u5b66\u4e60\u5de5\u5177<\/span><br \/>\n            <span class=\"tag\">\u8bed\u97f3\u5185\u5bb9\u7d22\u5f15<\/span><br \/>\n            <span class=\"tag\">\u89c6\u9891\u6807\u6ce8<\/span><br \/>\n            <span class=\"tag\">\u5f15\u7528\u6eaf\u6e90<\/span><br \/>\n            <span class=\"tag\">AI\u5de5\u5177<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u666e\u904d\u8ba4\u53ef\u5176\u89e3\u51b3\u89c6\u9891\u641c\u7d22\u75db\u70b9\uff0c\u5c24\u5176\u5173\u6ce8\u201c\u975e\u6309\u64ad\u653e\u91cf\u6392\u540d\u201d\u7684\u6743\u5a01\u6027\u5224\u65ad\u673a\u5236\uff0c\u5e76\u671f\u5f85\u7528\u4e8e\u6559\u7a0b\u3001\u64ad\u5ba2\u3001\u7814\u7a76\u3002\u6709\u7528\u6237\u63d0\u51fa\u5e0c\u671b\u589e\u52a0\u521b\u4f5c\u8005\u7aef\u201c\u9a8c\u8bc1\u89c6\u9891\u5185\u5bb9\u662f\u5426\u6709\u6548\u201d\u7684\u9006\u5411\u5206\u6790\u529f\u80fd\uff0c\u4ee5\u53ca\u5173\u6ce8\u7f16\u7a0b\u6559\u7a0b\u7b49\u65f6\u6548\u6027\u5185\u5bb9\u7684\u6392\u540d\u51c6\u786e\u6027\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                veridive \u5207\u4e2d\u7684\u662f\u4e00\u4e2a\u88ab\u957f\u671f\u5ffd\u89c6\u4f46\u9700\u6c42\u5de8\u5927\u7684\u7ec6\u5206\u5e02\u573a\u2014\u2014\u201c\u53e3\u8bed\u7f51\u7edc\u201d\u7684\u7ed3\u6784\u5316\u68c0\u7d22\u3002\u5b83\u6ca1\u6709\u50cf\u4f20\u7edfAI\u641c\u7d22\u90a3\u6837\u53bb\u5377\u7f51\u9875\u548c\u6587\u6863\uff0c\u800c\u662f\u7cbe\u51c6\u9501\u5b9aYouTube\u3001\u64ad\u5ba2\u8fd9\u4e9b\u89c6\u9891\/\u97f3\u9891\u5185\u5bb9\uff0c\u5e76\u63d0\u4f9b\u5230\u201c\u79d2\u201d\u7684\u7cbe\u786e\u5f15\u7528\uff0c\u89e3\u51b3\u4e86\u201c\u77e5\u9053\u5185\u5bb9\u597d\u4f46\u627e\u4e0d\u5230\u201d\u7684\u7ec8\u6781\u75db\u70b9\u3002\u4ece\u8bc4\u8bba\u770b\uff0c\u7528\u6237\u5bf9\u5176\u201c\u975e\u6309\u64ad\u653e\u91cf\u6392\u540d\u201d\u7684\u6743\u5a01\u7b97\u6cd5\u76f8\u5f53\u4e70\u8d26\uff0c\u8fd9\u51fb\u4e2d\u4e86\u4e3b\u6d41\u5e73\u53f0\u201c\u6d41\u91cf\u81f3\u4e0a\u201d\u7684\u8f6f\u808b\uff0c\u4e5f\u662f\u5176\u5dee\u5f02\u5316\u7684\u6838\u5fc3\u58c1\u5792\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u7136\u800c\uff0c\u4ea7\u54c1\u771f\u6b63\u7684\u6311\u6218\u4e0d\u5728\u4e8e\u6280\u672f\u5b9e\u73b0\uff0c\u800c\u5728\u4e8e\u5546\u4e1a\u5316\u8def\u5f84\u3002\u76ee\u524d\u201c\u514d\u8d39\u201d\u6a21\u5f0f\u96be\u4ee5\u652f\u6491\u6301\u7eed\u7684\u9ad8\u6210\u672c\u89c6\u9891\u8f6c\u5f55\u548c\u5b9e\u65f6\u641c\u7d22\u3002\u66f4\u6df1\u5c42\u7684\u4ef7\u503c\u6216\u8bb8\u4e0d\u5728ToC\u7684\u6548\u7387\u5de5\u5177\uff0c\u800c\u5728\u4e8eToB\u7684\u201c\u5185\u5bb9\u5ba1\u8ba1\u201d\u548c\u201c\u77e5\u8bc6\u8d44\u4ea7\u7ba1\u7406\u201d\u3002\u6bd4\u5982\uff0c\u4f01\u4e1a\u53ef\u4ee5\u5c06\u5185\u90e8\u57f9\u8bad\u89c6\u9891\u5e93\u53d8\u4e3a\u53ef\u68c0\u7d22\u7684\u77e5\u8bc6\u5e93\uff1b\u521b\u4f5c\u8005\u53ef\u4ee5\u7528\u5b83\u6765\u9a8c\u8bc1\u81ea\u5df1\u89c2\u70b9\u7684\u88ab\u5f15\u7528\u7387\u3002\u5982\u679cveridive\u80fd\u8df3\u51fa\u201c\u5e2e\u7528\u6237\u627e\u7b54\u6848\u201d\u7684\u521d\u7ea7\u573a\u666f\uff0c\u8f6c\u5411\u201c\u4e3a\u4e13\u4e1a\u9886\u57df\u6784\u5efa\u53ef\u9a8c\u8bc1\u7684\u53e3\u8bed\u77e5\u8bc6\u56fe\u8c31\u201d\uff0c\u5b83\u5c06\u4ece\u4e00\u4e2a\u597d\u7528\u7684AI\u5de5\u5177\uff0c\u8fdb\u5316\u6210\u6539\u53d8\u5185\u5bb9\u6d88\u8d39\u4e60\u60ef\u7684\u57fa\u7840\u8bbe\u65bd\u3002\u4f46\u5728\u90a3\u4e4b\u524d\uff0c\u5b83\u9700\u8981\u5148\u8bc1\u660e\u81ea\u5df1\u201c\u975e\u6392\u540d\u201d\u7b97\u6cd5\u7684\u51c6\u786e\u6027\u8db3\u591f\u7a33\u5b9a\uff0c\u907f\u514d\u6210\u4e3a\u201c\u9519\u8bef\u4fe1\u606f\u7684\u65b0\u653e\u5927\u5668\u201d\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">veridive<\/span>\n                <\/div>\n<div class=\"comment-content\">veridive turns YouTube, podcasts, lectures and interviews into cited answers \u2014 pinpointed to the exact second the answer is spoken. Ask in any language! veridive searches live, reads the transcripts, ranks sources by who actually knows, and answers with a click-to-play citation on every claim.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Hey everyone \ud83d\udc4b I&#8217;m Yusuf, Founder of veridive.<br \/>Long-time PH user, first-time maker and honestly a little nervous. \ud83d\ude42<\/p>\n<p>Here&#8217;s the thing: the world&#8217;s experts stopped writing and started talking. Founders explain their thinking on YouTube; scientists go deep on podcasts; doctors, investors and operators say what they really think out loud. We call it the spoken web \u2014 the biggest, fastest-growing body of human knowledge, and almost none of it is searchable, let alone answerable.<\/p>\n<p>veridive makes it answerable. Ask a question \u2192 it searches YouTube live, reads the actual transcripts, ranks by who genuinely knows (not view count), and answers with a citation on every claim that plays the exact second it was said. No more scrubbing a 4-hour video for the 30 seconds that matter.<\/p>\n<p>Three ways to use it:<\/p>\n<p>\u2022 DeepQuery \u2014 ask the whole spoken web, any language, live demo\u2192 <a href=\"https:\/\/veridive.com\/chat\/shared-XeS2ARyODWegvFg4Zw2d1_1_abH3MzLeCsKcEFcIznSEl1t2xxfTfuwMBequBRjK\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/veridive.com\/chat\/shared-XeS2ARyODWegvFg4Zw2d1_1_abH3MzLeCsKcEFcIznSEl1t2xxfTfuwMBequBRjK<\/a><br \/>\u2022 DeepContext \u2014 chat with your own trusted library, live demo\u2192 <a href=\"https:\/\/veridive.com\/chat\/shared-daKA5VjBDnAaXplcSaFj48f0d8JMRlbaE787xbqm44Kf1ZhOe9D5LECAO8ghWDR4\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/veridive.com\/chat\/shared-daKA5VjBDnAaXplcSaFj48f0d8JMRlbaE787xbqm44Kf1ZhOe9D5LECAO8ghWDR4<\/a><br \/>\u2022 Studio \u2014 turn any video into slides, quizzes, mindmaps &amp; flashcards<\/p>\n<p>It&#8217;s genuinely fun to use \u2014 and free to start. \ud83d\ude42<\/p>\n<p>We&#8217;ll be in the comments all day \u2014 tell us what you think and what we should build next. \ud83d\ude4f<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>5<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This feels like making YouTube search actually work the way people expect it to<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>4<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@bryan_williamson3\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@bryan_williamson3<\/a>&nbsp;this could be great for students and researchers. A lot of learning content is already on YouTube, it just isn\u2019t easy to navigate.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@bryan_williamson3\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@bryan_williamson3<\/a>&nbsp;That is exactly the feeling we were chasing, thank you Bryan. \ud83d\ude4f Over 70% of views on YouTube is algorithm driven. When you search something, actually it doesn&#8217;t search as we know from Google.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>How do you rank who actually knows, like based on channel credibility or just content matching?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@thamibenjelloun\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@thamibenjelloun<\/a>&nbsp;Hi Thami &#8211; in short both and more. Step one is context matching: does the transcript contain the answer, not just a matching title. Step two is authority, scored per topic, so &#8220;who knows about X&#8221; is judged differently than &#8220;who knows about Y.&#8221; We lean on signals of real expertise for that domain, never raw channel size or view count.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This is quite interesting. As a marketer, I wonder if we can get something like this for the other side. To validate whether the things I want in my video to matter will actually end up doing that. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@charan_tej_kammara\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@charan_tej_kammara<\/a>&nbsp;Hey Charan. The creator and marketer side is something we think about a lot. Not built yet, but noted, and your framing (will what I put in my video actually land) is exactly the right question. What else would you want to measure?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Wow, finally somebody made videos searchable! \ud83d\ude00 I love watching videos (or honestly, mostly listening to), but it means going down a rabbit hole in many cases and eats up a lot of time until you finally find what you needed. Good use of AI doing all the tedious filtering job!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@margarita_s88\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@margarita_s88<\/a>&nbsp;Hi Margarita. This made our day, thank you \ud83d\ude42 Actually you can find lots of great videos to watch as well, because we do heavy search\/job on YouTube to find what you&#8217;re looking and we always discover lots of under-the-radar videos for the topic.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Love the idea of making the spoken web searchable. I can already see myself using this for founder interviews, and long-form podcasts. Congrats!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@varun1jan\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@varun1jan<\/a>&nbsp;great to hear that you liked and find it useful. thank youu \ud83d\ude4f<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>As a non-coder who learned to build off YouTube, the click-to-play citation on the exact second is the part I&#8217;d basically live in&#8230; I&#8217;ve lost whole evenings scrubbing a 40-minute tutorial for the one step that actually unblocks me. The claim I&#8217;m most curious about is ranking by who actually knows. For coding how-tos the top-viewed video is often a year stale and just wrong, so how does veridive surface the credible voice when the loudest one usually wins?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@luca_capone\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@luca_capone<\/a>&nbsp;Hi Luca &#8211; this is the exact use case we built the citation for, so it means a lot coming from you. On ranking: we never trust &#8220;most viewed.&#8221; We first check whether the transcript actually contains a working answer to your specific question, then weight by how credible the speaker is on that topic, and for fast-moving things like coding we lean harder on freshness so a year-stale video does not win by default. It is genuinely the hardest part of the product and we tune it constantly. If you try a coding how-to and the ranking feels off, please let me know.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the launch! \ud83d\ude80 The idea of making the spoken web searchable and verifiable is really compelling. Love the ability to jump directly to the exact moment a claim was made.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@alina_tyslenok_\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@alina_tyslenok_<\/a>&nbsp;Really appreciate it. &#8220;Searchable and verifiable&#8221; is exactly the bet, especially the verifiable part. If a claim looks too good, one click and you are at the source. What would you point it at first?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The \u201cnot ranked by view count\u201d part is what makes this interesting. So much useful knowledge is buried in long videos, but trust + timestamped proof is what would make me actually use it.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@farrukh_butt1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@farrukh_butt1<\/a>&nbsp;Hey Farrukh, indeed. It&#8217;s one of our core feature and how we drive more value.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#14<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/VNMX7USPKQFIDY\" class=\"app-title\">Hero Studio Photos<\/a><\/p>\n<div class=\"one-liner\">Snap one photo, get listing-ready shots from every angle<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">112<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>Hero Studio Photos \u662f\u4e00\u6b3e\u901a\u8fc7\u5355\u5f20\u666e\u901a\u7167\u7247\u5373\u53ef\u751f\u6210\u591a\u89d2\u5ea6\u4e13\u4e1a\u7ea7\u5546\u54c1\u56fe\u7684\u5e94\u7528\uff0c\u4e13\u4e3a\u4e8c\u624b\u5356\u5bb6\u89e3\u51b3\u62cd\u7167\u3001\u5e03\u5149\u3001\u4fee\u56fe\u7b49\u7e41\u7410\u8d39\u65f6\u7684\u75db\u70b9\uff0c\u8ba9\u5546\u54c1\u77ac\u95f4\u62e5\u6709\u4e0a\u67b6\u54c1\u8d28\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/3c088b0a-5773-4c5f-a85d-b9fed02e7bef.jpeg?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/267b765b-4f31-419d-a188-e6d6519b8d48.jpeg?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/20dae2da-ae22-41b8-9b6e-fc229ac392a9.jpeg?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/c369f7ac-c815-483a-a06a-47fa13421cad.jpeg?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/999e642b-25b5-4307-ba53-4471b2eed61f.jpeg?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/e6b3a1e4-065e-4fb7-b502-1e60112ccb04.jpeg?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/8bd42554-232c-4281-85b1-a691b8325dc4.jpeg?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <video class=\"media-content\" poster=\"https:\/\/ph-files.imgix.net\/c25398c7-21d6-4242-ba8b-e9cd9062a28b.jpeg?auto=format\" data-video-url=\"https:\/\/www.youtube.com\/shorts\/8EJeCsGmhIc\"><source src=\"https:\/\/www.youtube.com\/shorts\/8EJeCsGmhIc\" type=\"video\/mp4\"><\/video><\/p>\n<div class=\"video-overlay\">\n<div class=\"play-icon\">\u25b6<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Android<\/span><br \/>\n            <span class=\"tag\">API<\/span><br \/>\n            <span class=\"tag\">Photography<\/span><br \/>\n            <span class=\"tag\">Artificial Intelligence<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">AI\u5546\u54c1\u56fe\u751f\u6210<\/span><br \/>\n            <span class=\"tag\">\u7535\u5546\u6444\u5f71<\/span><br \/>\n            <span class=\"tag\">\u4e8c\u624b\u4ea4\u6613\u5de5\u5177<\/span><br \/>\n            <span class=\"tag\">\u865a\u62df\u8bd5\u7a7f<\/span><br \/>\n            <span class=\"tag\">\u81ea\u52a8\u62a0\u56fe\u80cc\u666f<\/span><br \/>\n            <span class=\"tag\">iOS\/Android\u5e94\u7528<\/span><br \/>\n            <span class=\"tag\">API\/MCP\u63a5\u53e3<\/span><br \/>\n            <span class=\"tag\">\u7269\u54c1\u8bc6\u522b\u5b9a\u4ef7<\/span><br \/>\n            <span class=\"tag\">\u4e00\u952e\u4e0a\u67b6<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u666e\u904d\u8ba4\u53ef\u5176\u7b80\u5316\u62cd\u7167\u6d41\u7a0b\u3001\u63d0\u5347\u5546\u54c1\u8d28\u611f\u7684\u6838\u5fc3\u4ef7\u503c\u3002\u6709\u7528\u6237\u53cd\u9988\u9500\u552e\u6548\u7387\u5927\u589e\uff08\u598248\u5c0f\u65f6\u5185\u552e\u51fa\uff09\u3002\u4f46\u8bbf\u95ee\u8005\u660e\u786e\u6307\u51fa\u5176\u5e76\u975e\u5b8c\u7f8e\uff0c\u5bf9\u9ad8\u7aef\u5962\u4f88\u54c1\u6216\u9700\u7cbe\u786e\u8fd8\u539f\u7ec6\u8282\u7684\u5546\u54c1\u53ef\u80fd\u4e0d\u9002\u7528\uff1b\u540c\u65f6\u5efa\u8bae\u4f18\u5148\u4f18\u5316\u670d\u88c5\u3001\u7535\u5b50\u3001\u6536\u85cf\u54c1\u7b49\u54c1\u7c7b\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                Hero Studio Photos \u7684\u4eae\u70b9\u5728\u4e8e\u5b83\u5e76\u975e\u4e00\u4e2a\u5b64\u7acb\u7684\u4fee\u56fe\u5de5\u5177\uff0c\u800c\u662f\u6784\u5efa\u4e86\u4e00\u4e2a\u201cAI\u4e8c\u624b\u4ea4\u6613\u4ee3\u7406\u201d\u7684\u5165\u53e3\u3002\u5176\u201c\u4e00\u952e\u62cd\u7167+\u80cc\u666f\/\u89d2\u5ea6+\u8bc6\u522b\u5b9a\u4ef7+\u4e0a\u67b6\u201d\u7684\u5168\u94fe\u6761\u95ed\u73af\uff0c\u7cbe\u51c6\u51fb\u4e2d\u4e86\u4e2a\u4eba\u5356\u5bb6\u5728\u65f6\u95f4\u6210\u672c\u4e0e\u4e13\u4e1a\u5ea6\u4e0a\u7684\u6700\u5927\u75db\u70b9\u3002\u4ea7\u54c1\u771f\u6b63\u806a\u660e\u7684\u5730\u65b9\u5728\u4e8e\u4e24\u70b9\uff1a\u4e00\u662f\u201c\u7559\u75d5\u201d\u800c\u975e\u201c\u5b8c\u7f8e\u201d\u2014\u2014\u5728\u751f\u6210\u591a\u89d2\u5ea6\u56fe\u65f6\u4fdd\u7559\u5546\u54c1\u7684\u771f\u5b9e\u7455\u75b5\uff08\u5982\u5212\u75d5\u3001\u6389\u6f06\uff09\uff0c\u8fd9\u6070\u6070\u662f\u4ea4\u6613\u4fe1\u4efb\u7684\u5173\u952e\uff0c\u503c\u5f97\u79f0\u8d5e\uff1b\u4e8c\u662fAPI\u548cMCP\u7aef\u70b9\u7684\u5f00\u653e\uff0c\u4f7f\u5176\u80fd\u5d4c\u5165\u7535\u5546\u5e73\u53f0\u6216AI\u4ee3\u7406\u751f\u6001\uff0c\u4ece\u201c\u5de5\u5177\u201d\u5347\u7ea7\u4e3a\u201c\u4ea4\u6613\u57fa\u7840\u8bbe\u65bd\u201d\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u7136\u800c\uff0c\u5fc5\u987b\u6307\u51fa\u5176\u6f5c\u5728\u98ce\u9669\u3002\u7b2c\u4e00\uff0c\u751f\u6210\u56fe\u7684\u201c\u771f\u5b9e\u611f\u201d\u4e0e\u201c\u5356\u76f8\u201d\u4e4b\u95f4\u7684\u5e73\u8861\u6781\u5176\u5fae\u5999\uff0c\u5c24\u5176\u662f\u9488\u5bf9\u9ad8\u5ba2\u5355\u4ef7\u7684\u5962\u4f88\u54c1\u6216\u5bf9\u7248\u578b\u8981\u6c42\u4e25\u82db\u7684\u670d\u9970\uff0cAI\u751f\u6210\u7684\u201c\u7406\u60f3\u56fe\u201d\u662f\u5426\u4f1a\u8ba9\u4e70\u5bb6\u6536\u8d27\u540e\u56e0\u5fc3\u7406\u843d\u5dee\u800c\u4ea7\u751f\u5927\u91cf\u7ea0\u7eb7\uff1f\u7b2c\u4e8c\uff0c\u8be5\u4ea7\u54c1\u9ad8\u5ea6\u4f9d\u8d56\u5355\u4e00\u56fe\u50cf\u7684\u8bc6\u522b\u4e0e3D\u91cd\u5efa\u80fd\u529b\uff0c\u9762\u5bf9\u7eb9\u7406\u590d\u6742\u3001\u53cd\u5149\u5f3a\u70c8\u7684\u7269\u54c1\uff08\u5982\u73e0\u5b9d\u3001\u7535\u5b50\u8bbe\u5907\u80cc\u677f\uff09\uff0c\u6548\u679c\u53ef\u80fd\u5927\u6253\u6298\u6263\u3002\u672c\u8d28\u4e0a\uff0cHero \u89e3\u51b3\u7684\u662f\u9ad8\u9891\u3001\u5feb\u901f\u3001\u4f4e\u5ba2\u5355\u4ef7\u5546\u54c1\u7684\u6d41\u901a\u6548\u7387\u95ee\u9898\uff0c\u5bf9\u4e8e\u9700\u8981\u201c\u4e00\u5bf9\u4e00\u5b9a\u5236\u201d\u6216\u201c\u6781\u4f73\u7ec6\u8282\u5448\u73b0\u201d\u7684\u54c1\u7c7b\uff0c\u5b83\u4ecd\u662f\u4e00\u4e2a\u8f85\u52a9\u800c\u975e\u66ff\u4ee3\u65b9\u6848\u3002\u4f5c\u4e3a\u5f00\u7bc7\uff0c\u5207\u5165\u4e8c\u624b\u7529\u5356\u5e02\u573a\u5b9e\u4e3a\u660e\u667a\uff0c\u4f46\u82e5\u60f3\u5411\u4e0a\u62d3\u5c55\u81f3\u65b0\u54c1\u533a\u6216\u4e13\u4e1a\u5e93\u623f\uff0cAI\u751f\u6210\u56fe\u7684\u201c\u7248\u6743\u5f52\u5c5e\u201d\u548c\u201c\u591a\u98ce\u683c\u63a7\u5236\u201d\u5c06\u662f\u66f4\u6df1\u7684\u62a4\u57ce\u6cb3\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">Hero Studio Photos<\/span>\n                <\/div>\n<div class=\"comment-content\">Snap one photo of whatever you&#8217;re selling and Hero turns it into clean studio shots from every angle, including on-model and mannequin-style images for clothing. Live on iOS and Android, with an API and MCP server so developers and AI agents can build on it.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">Hey Product Hunt, Joshua here, co-founder and CEO of Hero.<\/p>\n<p>We built Hero because selling something online is still far more work than it should be. You have to figure out what the item is, what it is worth, how to describe it, where to post it, and somehow take photos that do not look like they were shot at 11pm under bad kitchen lighting.<\/p>\n<p>That last part matters more than people think. Bad photos make good items look cheap. Good photos make buyers trust what they are seeing.<\/p>\n<p>So today we are launching Hero Studio Photos. Take one ordinary item photo and Hero turns it into clean studio shots from every angle, while keeping the real details buyers care about. For clothing, that can include on-model and mannequin-style shots. For electronics and everything else, it means better lighting, cleaner backgrounds, and photos that look ready to list. No setup, backdrop, or editing skills.<\/p>\n<p>It is part of the bigger Hero flow: snap a photo, identify the item, price it, write the listing, and get it ready to sell. One tap and it&#8217;s live on eBay, Facebook Marketplace, and the Hero Shop. <\/p>\n<p>Also new today:<br \/>\n&#8211; Android: Hero is now on iOS and Android in the US, Canada, and Australia.<br \/>\n&#8211; Hero Shop: eligible public listings get extra distribution with no extra posting.<br \/>\n&#8211; API + MCP access: developers, marketplaces, and agents can identify, price, write listings, and generate product assets from real-world goods.<\/p>\n<p>The bigger idea is simple. If AI is going to help people buy, it should help ordinary people sell the things sitting around them too.<\/p>\n<p>I would love feedback on:<br \/>\n&#8211; Whether Studio Photos makes you more likely to list something<br \/>\n&#8211; Which categories we should nail first: clothing, electronics, collectibles, home goods, or something else<br \/>\n&#8211; What builders would want from the API and MCP<\/p>\n<p>Thanks for taking a look. We will be here all day answering questions.<\/p><\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>4<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>We\u2019ve been busy and there are so many things in this launch to be excited about!<\/p>\n<\/p>\n<p>Great photos make all the difference when selling stuff online. Our new Studio Photos feature relights, reframes, and cleans up images even if you\u2019re snapping photos on the go (or in the bins!). Studio Photos are also context dependent &#8211; if you scan clothing then you\u2019ll see virtual try on and ghost mannequin images in addition to standard views like isolated white background.<\/p>\n<\/p>\n<p>We\u2019re finally live for Android on the Google Play Store! This has been our most requested feature and we\u2019re happy to be delivering a native Android experience for all of you.<\/p>\n<\/p>\n<p>We\u2019re also opening up API + MCP access to give your agents the ability to sell real things with just a single image. A single tool call identifies and prices the item, generates listing details like title, description and attributes and even generates Studio Photos. Apply for access at <a href=\"http:\/\/herostuff.com\/api\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">herostuff.com\/api<\/a><\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>If you have sold anything online, you know that taking photos is a big time suck. I recently sold my Apple Watch, and Hero handled everything\u2026 the identification, pricing, title, description, and full set of photos all from a single photo \ud83d\udcf8 Literally one-shotted the whole thing without edits. It sold within 48h. Here is the original <a href=\"https:\/\/www.facebook.com\/marketplace\/item\/1730270808333458\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">listing<\/a>.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Love that Hero handles pricing, descriptions, and posting along with the photos, so many steps simplified in one tap.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Nice product <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Biased, but Studio Photos is such a great feature and you should try it at least once \ud83d\ude42<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Here are some more examples. It&#8217;s quite magical and fascinating each time.<\/p>\n<\/p>\n<p><strong>YETI tumbler<\/strong><\/p>\n<ul>\n<li>\n<p>The logo was cut off in the original photo<\/p>\n<\/li>\n<li>\n<p>The tumbler had chipped paint and scratches<\/p>\n<\/li>\n<li>\n<p>Studio Photos recognized the logo and kept the blemishes<\/p>\n<\/li>\n<\/ul>\n<p><img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/8b3cd33b-9310-441f-9ab5-516f7551aa4f.png?auto=compress,format&amp;codec=mozjpeg&amp;cs=strip\" style=\"max-width: 100%\"><\/p>\n<p><strong>Cat Toy \/ Highchair<\/strong><\/p>\n<ul>\n<li>\n<p>Studio Photos is context-aware<\/p>\n<\/li>\n<li>\n<p>For in-use shots, it will match the intended use of the item<\/p>\n<\/li>\n<li>\n<p>Here are two examples<\/p>\n<\/li>\n<\/ul>\n<p><img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/bfe58e21-2da9-4004-8e0f-89439260997a.png?auto=compress,format&amp;codec=mozjpeg&amp;cs=strip\" style=\"max-width: 100%\"><\/p>\n<p><img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/6ec63beb-137e-4233-a817-f4947fbc67de.png?auto=compress,format&amp;codec=mozjpeg&amp;cs=strip\" style=\"max-width: 100%\"><\/p>\n<p>Is Hero Studio Photos getting it right all the time? Absolutely not. But for the majority of items, it gets it right. It&#8217;s also not necessarily the right tool for all listings all the time (e.g., luxury or authentic items)<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Giving my openclaw selling superpowers through the API is magical!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#15<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/QNNORTYHNRJIVI\" class=\"app-title\">OLO Robotics<\/a><\/p>\n<div class=\"one-liner\">Control robots in your browser \u2014 no setup needed<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">105<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>OLO Robotics \u662f\u4e00\u4e2a\u57fa\u4e8e\u6d4f\u89c8\u5668\u7684\u673a\u5668\u4eba\u5f00\u53d1\u5e73\u53f0\uff0c\u514d\u53bbLinux\u5b89\u88c5\u548cROS2\u914d\u7f6e\u7684\u7e41\u7410\u8fc7\u7a0b\uff0c\u8ba9\u5f00\u53d1\u8005\u3001\u7814\u7a76\u4eba\u5458\u65e0\u9700\u8bbe\u7f6e\u73af\u5883\u5373\u53ef\u572830\u5206\u949f\u5185\u7528JavaScript\u6216Python SDK\u7f16\u7a0b\u3001\u4eff\u771f\u548c\u63a7\u5236\u771f\u5b9e\u673a\u5668\u4eba\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <video class=\"media-content\" poster=\"https:\/\/ph-files.imgix.net\/5532db39-0e06-4a93-b306-add5e199003a.jpeg?auto=format\" data-video-url=\"https:\/\/youtu.be\/mL0CbjDpNJA\"><source src=\"https:\/\/youtu.be\/mL0CbjDpNJA\" type=\"video\/mp4\"><\/video><\/p>\n<div class=\"video-overlay\">\n<div class=\"play-icon\">\u25b6<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/d22f05b6-95ef-4b66-af62-85d9606e2d0b.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/eb79e912-e3f5-4d72-9877-cab84718136c.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/28eeefe0-c26a-4cc4-978e-077bdedbe8e2.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/70c90b82-7487-496e-87a9-715c6e86ec71.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/15b27229-8f93-41cb-b1b6-64b7e4b7137a.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Robots<\/span><br \/>\n            <span class=\"tag\">Developer Tools<\/span><br \/>\n            <span class=\"tag\">Artificial Intelligence<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">\u673a\u5668\u4eba\u5f00\u53d1\u5e73\u53f0<\/span><br \/>\n            <span class=\"tag\">ROS2<\/span><br \/>\n            <span class=\"tag\">\u6d4f\u89c8\u5668<\/span><br \/>\n            <span class=\"tag\">AI\u7f16\u7a0b\u52a9\u624b<\/span><br \/>\n            <span class=\"tag\">\u4eff\u771f<\/span><br \/>\n            <span class=\"tag\">\u8fdc\u7a0b\u63a7\u5236<\/span><br \/>\n            <span class=\"tag\">JavaScript\/Python SDK<\/span><br \/>\n            <span class=\"tag\">\u514d\u914d\u7f6e<\/span><br \/>\n            <span class=\"tag\">ProductHunt<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u8bc4\u8bba\u4e3b\u8981\u5173\u6ce8\u6280\u672f\u5b9e\u73b0\uff0c\u8be2\u95ee\u6d4f\u89c8\u5668\u4f1a\u8bdd\u5982\u4f55\u5904\u7406\u673a\u5668\u4eba\u8fde\u63a5\u72b6\u6001\u3002\u521b\u59cb\u56e2\u961f\u56de\u5e94\u79f0\u673a\u5668\u4eba\u7aef\u8fd0\u884c\u5b8c\u6574ROS2\u6808\uff0c\u591a\u4e2a\u6d4f\u89c8\u5668\u4f1a\u8bdd\u901a\u8fc7\u4e91\u7aef\u670d\u52a1\u5171\u4eab\u4e00\u4e2a\u5e95\u5c42\u8fde\u63a5\uff0c\u65f6\u5ef6\u654f\u611f\u8ba1\u7b97\u4fdd\u7559\u5728\u673a\u5668\u4eba\u7aef\uff0c\u63a7\u5236\u4e0e\u534f\u4f5c\u5728\u6d4f\u89c8\u5668\u7aef\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                OLO Robotics\u5207\u5165\u7684\u662f\u4e00\u4e2a\u6781\u5176\u7cbe\u51c6\u4f46\u7ade\u4e89\u6fc0\u70c8\u7684\u75db\u70b9\u2014\u2014\u673a\u5668\u4eba\u5f00\u53d1\u7684\u73af\u5883\u914d\u7f6e\u5730\u72f1\u3002\u4ece105\u7968\u6765\u770b\uff0c\u4ea7\u54c1\u786e\u5b9e\u51fb\u4e2d\u4e86\u5f00\u53d1\u8005\u7fa4\u4f53\u7684\u60c5\u7eea\uff0c\u4f46\u5176\u771f\u6b63\u4ef7\u503c\u4e0d\u5728\u4e8e\u201c\u514d\u5b89\u88c5\u201d\u8fd9\u4e2a\u8868\u5c42\u5356\u70b9\uff0c\u800c\u5728\u4e8e\u5b83\u5c06ROS2\u8fd9\u4e2a\u5e9e\u5927\u3001\u788e\u7247\u5316\u7684\u751f\u6001\u7cfb\u7edf\u5c01\u88c5\u6210\u4e86\u4e00\u79cd\u201c\u5373\u5f00\u5373\u7528\u201d\u7684\u4e91\u670d\u52a1\uff0c\u540c\u65f6\u4fdd\u7559\u4e86\u5e95\u5c42\u53ef\u7f16\u7a0b\u6027\uff08JavaScript\/Python SDK\uff09\u3002\u8fd9\u672c\u8d28\u4e0a\u662f\u628a\u673a\u5668\u4eba\u5f00\u53d1\u4ece\u201c\u57fa\u7840\u8bbe\u65bd\u5de5\u7a0b\u201d\u62c9\u56de\u5230\u4e86\u201c\u5e94\u7528\u903b\u8f91\u5f00\u53d1\u201d\u7684\u5c42\u9762\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u4f46\u9700\u8981\u51b7\u9759\u7684\u662f\uff0c\u8fd9\u7c7b\u201c\u4e91\u7aef+\u6d4f\u89c8\u5668\u201d\u6a21\u5f0f\u7684\u53ef\u6301\u7eed\u6027\u6311\u6218\u4e0d\u5c0f\u3002\u9996\u5148\uff0c\u673a\u5668\u4eba\u5bf9\u5b9e\u65f6\u6027\u8981\u6c42\u9ad8\uff0c\u5373\u4fbf\u56e2\u961f\u5728\u8bc4\u8bba\u4e2d\u56de\u5e94\u201c\u65f6\u5ef6\u654f\u611f\u8ba1\u7b97\u7559\u5728\u673a\u5668\u4eba\u7aef\u201d\uff0c\u4f46\u7f51\u7edc\u5ef6\u8fdf\u3001\u4e22\u5305\u3001\u670d\u52a1\u4e2d\u65ad\u7b49\u95ee\u9898\u5728\u5b9e\u9a8c\u5ba4\u73af\u5883\u53ef\u63a7\uff0c\u5728\u5de5\u4e1a\u7ea7\u573a\u666f\u4e0b\u5374\u662f\u786c\u4f24\u3002\u5176\u6b21\uff0c\u4f9d\u8d56Docker\u5bb9\u5668\u6865\u63a5\u7269\u7406\u673a\u5668\u4eba\u610f\u5473\u7740\u4ea7\u54c1\u5bf9\u7528\u6237\u7aef\u7f51\u7edc\u8d28\u91cf\u548c\u673a\u5668\u4eba\u672c\u8eab\u7684\u786c\u4ef6\u517c\u5bb9\u6027\u63d0\u51fa\u4e86\u9690\u6027\u8981\u6c42\u2014\u2014\u5982\u679c\u5bb9\u5668\u5728\u4f4e\u6210\u672c\u5d4c\u5165\u5f0f\u5e73\u53f0\u8dd1\u4e0d\u8d77\u6765\uff0c\u7528\u6237\u4f9d\u7136\u4f1a\u88ab\u5361\u4f4f\u3002\u518d\u8005\uff0c\u4ea7\u54c1\u76ee\u524d\u4e13\u6ce8\u4e8eROS2\u751f\u6001\uff0c\u800c\u673a\u5668\u4eba\u9886\u57df\u5c1a\u6709\u5927\u91cf\u975eROS2\u5b58\u91cf\u7cfb\u7edf\uff0c\u4ee5\u53ca\u8d8a\u6765\u8d8a\u591a\u8f6c\u5411Micro-ROS\u6216\u81ea\u5b9a\u4e49\u901a\u4fe1\u6808\u7684\u65b0\u9879\u76ee\u3002OLO\u82e5\u53ea\u5728ROS2\u7684\u8212\u9002\u533a\u5185\u6253\u8f6c\uff0c\u5929\u82b1\u677f\u4f1a\u5f88\u4f4e\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u4ece\u5546\u4e1a\u6a21\u5f0f\u63a8\u6d4b\uff0cOLO\u5f88\u53ef\u80fd\u4f1a\u8d70\u201c\u514d\u8d39\u589e\u503c+\u4f01\u4e1a\u8bb8\u53ef\u201d\u8def\u7ebf\uff0c\u4f46\u771f\u6b63\u503c\u5f97\u5173\u6ce8\u7684\u662f\u5176AI coding assistant\u80fd\u5426\u5f62\u6210\u5dee\u5f02\u5316\u2014\u2014\u5982\u679c\u5b83\u4e0d\u53ea\u662f\u7b80\u5355\u7684\u4ee3\u7801\u8865\u5168\uff0c\u800c\u662f\u80fd\u7406\u89e3\u673a\u5668\u4eba\u8fd0\u52a8\u5b66\u3001\u4f20\u611f\u5668\u878d\u5408\u7b49\u573a\u666f\u5e76\u751f\u6210\u53ef\u8fd0\u884c\u7684ROS2\u8282\u70b9\uff0c\u90a3\u624d\u771f\u6b63\u79f0\u5f97\u4e0a\u201c\u4ece30\u5206\u949f\u5230\u4e24\u661f\u671f\u201d\u7684\u964d\u7ef4\u6253\u51fb\u3002\u5426\u5219\uff0c\u5b83\u4e0d\u8fc7\u662f\u4e00\u4e2a\u505a\u5f97\u597d\u770b\u7684\u8fdc\u7a0b\u684c\u9762\u52a0\u4eff\u771f\u5668\uff0c\u654c\u4e0d\u8fc7Gazebo+VS Code\u7684\u514d\u8d39\u7ec4\u5408\u3002\u56e2\u961f\u9700\u8981\u6709\u660e\u786e\u7684\u884c\u4e1a\u5408\u4f5c\u951a\u70b9\uff08\u5982\u4e0eOEM\u9884\u88c5\u5bb9\u5668\u3001\u4e0e\u6559\u80b2\u673a\u6784\u6559\u5b66\u7ed1\u5b9a\uff09\uff0c\u5426\u5219\u5f88\u5bb9\u6613\u6ca6\u4e3a\u5c0f\u4f17\u6781\u5ba2\u73a9\u5177\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">OLO Robotics<\/span>\n                <\/div>\n<div class=\"comment-content\">OLO is a web-based platform that gives developers, researchers, and academics everything they need to program robots \u2014 without the setup hell. Get ROS2 access, robot visualization, simulation and AI-assisted coding all in your browser. Go from idea to working robot in 30 minutes, not two weeks. No Linux installs. No config rabbit holes. Just you, your robot, and a JavaScript or Python SDK playground ready from day one. Now open for sign-ups.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">Hey Product Hunt! \ud83d\udc4b<\/p>\n<p>We built OLO because we feel that the status quo is holding back robotics. Linux setup, ROS2 configuration, dependency hell\u2026 Precious development and testing time lost.<\/p>\n<p>We wanted to create tools that allowed anyone, including seasoned roboticists, to go from idea to working robot quicker.<\/p>\n<p>With OLO you open a browser, pick your sim environment and robot and start controlling. Teleoperation, ROS2 topic access, an AI coding assistant, a JavaScript or Python SDK are all included. No plugins required.<\/p>\n<p>If you have a ROS2-enabled robot, just drop our Docker container onto the robot. This bridges the data from your robot to the OLO platform. You will be connected in minutes.<\/p>\n<p>We&#8217;re particularly keen to hear from:<br \/>\n\u2022 Software devs who want to say yes to robotics projects<br \/>\n\u2022 Academics and researchers losing weeks to infrastructure<br \/>\n\u2022 Robot OEMs who want to eliminate customer setup friction<\/p>\n<p>Sign-ups are open now. We&#8217;d love your honest feedback. What would make this indispensable for you?<\/p>\n<p>\u2192 olo-robotics.com<\/p><\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Getting ROS2 into a browser runtime without native setup is the real engineering challenge. Most robotics stacks assume a local Linux environment and the dependency graph alone can take hours to untangle. We&#8217;ve hit similar friction building persistent background service connections. How do you handle session state for robot connections? Does each browser session get a dedicated ROS2 node or is there a shared multiplexing layer?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@retain_dev\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@retain_dev<\/a>&nbsp;We run the full ROS 2 stack on the robot &#8211; Nav2, drivers, and the usual dependency footprint all live in our pre configured appliance, which maintains an authenticated low latency link to the platform. That lets you run full-stack robotics from a web session without installing a Linux robotics environment on every machine. Several sessions per robot share one appliance-side connection; the service distributes telemetry and state to connected clients and routes request\/response traffic to the initiating session when required. Bottom line: ROS and time-sensitive compute stay on the robot, control and collaboration stay in the browser, and authentication, routing, and policy are enforced in the cloud.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#16<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/IILMADBX4VM3HF\" class=\"app-title\">AGNT.Hub<\/a><\/p>\n<div class=\"one-liner\">Build always-on AI agents without managing servers<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">104<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>AGNT Hub \u4e3a\u90a3\u4e9b\u60f3\u7528AI\u81ea\u52a8\u5904\u7406\u65e5\u5e38\u5de5\u5177\uff08\u5982Notion\uff09\u4f46\u4e0d\u60f3\u6298\u817eDocker\u3001AWS\u7b49\u6280\u672f\u914d\u7f6e\u7684\u7528\u6237\uff0c\u63d0\u4f9b\u4e86\u4e00\u4e2a\u5373\u5f00\u5373\u7528\u7684\u79c1\u6709AI\u5de5\u4f5c\u7a7a\u95f4\uff0c\u8ba9\u667a\u80fd\u4f53\u5728\u4e91\u7aef\u540e\u53f0\u6301\u7eed\u8fd0\u884c\uff0c\u4e0d\u518d\u53d7\u9650\u4e8e\u804a\u5929\u7a97\u53e3\u6216\u672c\u5730\u7535\u8111\u5173\u673a\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/d385da50-b842-44e9-9e49-7c86b3453bb1.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/57954fb2-fb75-4d65-916e-08788259d778.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/b203b72f-1668-41a6-ac21-6ab288d42bcc.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/773f3b26-7108-4e61-8ebc-65a78d4b6977.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Productivity<\/span><br \/>\n            <span class=\"tag\">Developer Tools<\/span><br \/>\n            <span class=\"tag\">Artificial Intelligence<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">AI\u667a\u80fd\u4f53\u5e73\u53f0<\/span><br \/>\n            <span class=\"tag\">\u65e0\u670d\u52a1\u5668<\/span><br \/>\n            <span class=\"tag\">AI\u5de5\u4f5c\u6d41<\/span><br \/>\n            <span class=\"tag\">\u79c1\u6709\u4e91\u5bb9\u5668<\/span><br \/>\n            <span class=\"tag\">MCP\u5de5\u5177\u8fde\u63a5<\/span><br \/>\n            <span class=\"tag\">\u975e\u6280\u672f\u7528\u6237<\/span><br \/>\n            <span class=\"tag\">\u540e\u53f0\u81ea\u52a8\u5316<\/span><br \/>\n            <span class=\"tag\">\u6280\u80fd\u5e02\u573a<\/span><br \/>\n            <span class=\"tag\">\u4f01\u4e1aAI<\/span><br \/>\n            <span class=\"tag\">\u96f6\u914d\u7f6e\u90e8\u7f72<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u8d5e\u8d4f\u201c\u8131\u79bb\u804a\u5929\u6846\u201d\u3001\u201c\u540e\u53f0\u6301\u7eed\u8fd0\u884c\u201d\u548c\u201c\u964d\u4f4e\u6280\u672f\u95e8\u69db\u201d\u7684\u6838\u5fc3\u4ef7\u503c\u3002\u4e3b\u8981\u5173\u6ce8\u70b9\u96c6\u4e2d\u5728\uff1a\u9519\u8bef\u5904\u7406\u4e0e\u901a\u77e5\u673a\u5236\u3001\u51fa\u7ad9\u8bbf\u95ee\u4e0e\u5b89\u5168\u63a7\u5236\uff08\u5982API\u767d\u540d\u5355\uff09\u3001\u4ee5\u53ca\u7b56\u7565\u7ba1\u7406\u662f\u5e94\u5f52\u6280\u80fd\u6240\u6709\u8fd8\u662f\u4e2d\u592e\u63a7\u5236\u3002\u65b0\u624b\u504f\u597d\u5148\u7528\u5e02\u573a\u73b0\u6210\u6280\u80fd\u5feb\u901f\u9a8c\u8bc1\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                AGNT Hub \u7cbe\u51c6\u5207\u4e2d\u4e86\u201cAI\u5b9e\u7528\u5316\u201d\u7684\u6700\u540e\u4e00\u516c\u91cc\u2014\u2014\u4e0d\u662f\u751f\u6210\u6587\u672c\uff0c\u800c\u662f\u771f\u6b63\u9a71\u52a8\u5de5\u4f5c\u6d41\u3002\u5176\u6838\u5fc3\u4f18\u52bf\u5e76\u975e\u6280\u672f\u7a81\u7834\uff0c\u800c\u5728\u4e8e\u4f53\u9a8c\u5c01\u88c5\uff1a\u5c06\u201c\u670d\u52a1\u5668\u6392\u969c\u201d\u4ece\u7528\u6237\u624b\u4e2d\u5265\u79bb\uff0c\u8ba9\u975e\u6280\u672f\u8fd0\u8425\u8005\u4e5f\u80fd\u62e5\u6709\u4e13\u5c5e\u7684\u3001\u5e38\u9a7b\u7684AI\u201c\u6570\u5b57\u5458\u5de5\u201d\u3002\u8bc4\u8bba\u4e2d\u66b4\u9732\u51fa\u7684\u95ee\u9898\uff0c\u6070\u6070\u662f\u5176\u4ef7\u503c\u6df1\u5316\u7684\u5173\u952e\uff1a\u9519\u8bef\u901a\u77e5\u4e0e\u5b89\u5168\u7b56\u7565\u3002\u5f53\u524d\u4f9d\u8d56\u201c\u81ea\u5b9a\u4e49\u6280\u80fd\u201d\u6765\u95f4\u63a5\u63a7\u5236\u51fa\u7ad9\u6743\u9650\uff0c\u6697\u793a\u4e86\u5b89\u5168\u7ec6\u7c92\u5ea6\u4e0d\u8db3\uff0c\u8fd9\u5c06\u6210\u4e3a\u5176\u5546\u4e1a\u5316\u7684\u963f\u5580\u7409\u65af\u4e4b\u8e35\u3002\u771f\u6b63\u7684\u4ef7\u503c\u5728\u4e8e\u80fd\u5426\u4ece\u201c\u8fd0\u884c\u5bb9\u5668\u201d\u8fdb\u5316\u4e3a\u201c\u7b56\u7565\u5f15\u64ce\u201d\u2014\u2014\u5b9a\u4e49\u4e00\u4e2a\u4e2d\u592e\u5c42\uff0c\u533a\u5206\u201c\u53ea\u8bfb\u3001\u53ef\u5199\u63d0\u6848\u3001\u81ea\u52a8\u6267\u884c\u4f4e\u98ce\u9669\u201d\u7b49\u4ee3\u7406\u6743\u9650\u3002\u82e5\u80fd\u5b9e\u73b0\uff0cAGNT Hub\u4fbf\u80fd\u4ece\u201c\u6258\u7ba1\u5de5\u5177\u201d\u8d28\u53d8\u4e3a\u201c\u4f01\u4e1a\u7ea7AI\u4ee3\u7406\u6cbb\u7406\u6846\u67b6\u201d\uff0c\u5426\u5219\u5b83\u53ea\u662f\u4e00\u4e2a\u66f4\u7cbe\u81f4\u7684\u3001\u4e0d\u5173\u673a\u7684ChatGPT\u5916\u58f3\u800c\u5df2\u3002MCP\u534f\u8bae\u7684\u63a5\u5165\u867d\u964d\u4f4e\u4e86\u8fde\u63a5\u95e8\u69db\uff0c\u4f46\u6807\u51c6\u5316\u7684\u5de5\u5177\u534f\u8bae\u4e0e\u788e\u7247\u5316\u7684\u4f01\u4e1a\u6743\u9650\u6a21\u578b\u4e4b\u95f4\u7684\u9e3f\u6c9f\uff0c\u624d\u662f\u51b3\u5b9a\u5b83\u80fd\u8d70\u591a\u8fdc\u7684\u771f\u6b63\u8003\u9898\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">AGNT.Hub<\/span>\n                <\/div>\n<div class=\"comment-content\">Most AI tools stop at the chat box. AGNT Hub gives you a private AI workspace running inside an isolated cloud container. Add custom skills, connect tools like Notion via MCP, and build workflows once. Let your agents run in the background without touching Docker, AWS, or config files.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">We built AGNT Hub because most AI products still live inside a chat window.<\/p>\n<p>That\u2019s fine for quick answers. It breaks when you want AI connected to the work you actually use every day.<\/p>\n<p>The moment you try to make that setup private and server-based, it usually turns into infrastructure work.<\/p>\n<p>Docker. AWS. API keys. Config files. Local scripts that stop the moment your laptop closes.<\/p>\n<p>AGNT Hub makes that setup usable for non-technical operators.<\/p>\n<p>You sign up, get a private AI workspace running on a dedicated server, connect your tools through MCP, add skills from the marketplace or bring your own, and let agents run from the server instead of your machine.<\/p>\n<p>If your last AI setup died the moment your laptop closed \u2013 this one won&#8217;t.<\/p><\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>7<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@avd01\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@avd01<\/a>&nbsp;Love the idea of moving beyond the chat box. Having a private workspace where agents can actually connect to tools and run workflows in the background without dealing with Docker or cloud setup sounds like a huge quality-of-life improvement. Curious to see how people end up using this. \ud83d\ude80<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>I think this is a great solution because it takes effort to set up your dev environment and the focus on non technical users is great as well because this is a category that is exploring these tools more and more and does require better setup to explore different tools. How do you handle the case if an agent is running a background workflow and then hits an error? Is this surfaced to the end user via some sort of notification system or is it moreso this is just the container and up to the user to handle this?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@avd01\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@avd01<\/a>&nbsp;Great idea. Many people experience AI tools stopping working as soon as their computer shuts down. It&#8217;s great that you&#8217;ve created a solution where everything runs on the server and doesn&#8217;t require deep technical knowledge. This really makes AI much more accessible to regular users.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>I think an isolated cloud container for agents is a nice way to make this feel safer. Can you control outbound access, like restricting which domains or APIs the agent can call?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@thamibenjelloun\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@thamibenjelloun<\/a>&nbsp;We don\u2019t have a dedicated page for these settings. However, you can create a custom skill and assign it to your agent, which will give you this level of control.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The marketplace plus bring your own skills combo is smart. Do new users tend to activate faster grabbing a ready skill from the marketplace, or building their own first? Wondering which path gets them to &#8220;this actually works&#8221; quicker.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Nice launch. The dedicated server angle makes sense, especially for agents that should keep running after the laptop closes.<\/p>\n<p>The two questions already here, error handling and outbound controls, feel like the real production boundary. Once an agent can run background workflows with MCP tools, do you see policy as something each custom skill owns, or as a central layer that says: this agent can read these tools, propose these writes, auto-run these low-risk actions, and require approval for the risky ones?<\/p>\n<p>That feels like the difference between a useful hosted agent and a tiny autonomous intern with root access.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#17<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/HQ77H6POHIZXEF\" class=\"app-title\">Zingle<\/a><\/p>\n<div class=\"one-liner\">Learn words in context with AI<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">102<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>Zingle\u662f\u4e00\u6b3e\u901a\u8fc7AI\u5c06\u7528\u6237\u81ea\u9009\u5185\u5bb9\uff08\u5982\u6587\u7ae0\u3001\u65b0\u95fb\uff09\u4e2d\u7684\u5355\u8bcd\u4e0e\u539f\u59cb\u8bed\u5883\u7ed1\u5b9a\uff0c\u4ee5SRS\u590d\u4e60\u7cfb\u7edf\u5f3a\u5316\u8bb0\u5fc6\u7684\u7f51\u9875\u7aef\u8bcd\u6c47\u5b66\u4e60\u5de5\u5177\uff0c\u89e3\u51b3\u4f20\u7edf\u80cc\u8bcd\u8131\u79bb\u8bed\u5883\u5bfc\u81f4\u201c\u8bb0\u4e86\u5fd8\u3001\u4e0d\u4f1a\u7528\u201d\u7684\u75db\u70b9\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/e0cf1353-a75e-42d3-b1ed-28154e385af8.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/8e19b6e7-efe1-4841-8717-92fd8485434f.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/e3bf6375-d78a-4c89-94ca-f420ba060802.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/456331bd-cfdf-4722-ad51-d14f916db0fb.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/628e5f7f-03da-4883-8a28-0485332134b4.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/a2b7645e-2ca2-42f2-a652-c17e480359e8.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/0e3e72cc-6582-480e-94dc-30929db51738.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/41acc629-f388-43bf-b6bc-6f0a1d037919.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/60b8bfc2-5d92-4e2d-850b-fe145a607617.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Languages<\/span><br \/>\n            <span class=\"tag\">Artificial Intelligence<\/span><br \/>\n            <span class=\"tag\">Online Learning<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">AI\u8bcd\u6c47\u5b66\u4e60<\/span><br \/>\n            <span class=\"tag\">\u8bed\u5883\u8bb0\u5fc6<\/span><br \/>\n            <span class=\"tag\">SRS\u590d\u4e60<\/span><br \/>\n            <span class=\"tag\">\u9605\u8bfb\u8f85\u52a9<\/span><br \/>\n            <span class=\"tag\">\u5185\u5bb9\u9a71\u52a8\u5b66\u4e60<\/span><br \/>\n            <span class=\"tag\">\u8bed\u8a00\u5de5\u5177<\/span><br \/>\n            <span class=\"tag\">\u7f51\u9875\u5e94\u7528<\/span><br \/>\n            <span class=\"tag\">\u4e2a\u6027\u5316\u5b66\u4e60<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u666e\u904d\u8ba4\u53ef\u201c\u4ece\u771f\u5b9e\u5185\u5bb9\u4e2d\u5b66\u4e60\u8bcd\u6c47\u201d\u7684\u601d\u8def\uff0c\u8ba4\u4e3a\u6bd4\u6b7b\u8bb0\u786c\u80cc\u66f4\u81ea\u7136\u3002\u6838\u5fc3\u53cd\u9988\u805a\u7126\u4e8e\uff1a1\uff09\u662f\u5426\u652f\u6301\u975e\u4e3b\u6d41\u8bed\u8a00\uff08\u5982\u571f\u8033\u5176\u8bed\uff09\u53ca\u6548\u679c\uff1b2\uff09\u590d\u4e60\u65f6\u80fd\u5426\u4fdd\u7559\u539f\u59cb\u53e5\u5b50\u4e0e\u4e0a\u4e0b\u6587\uff1b3\uff09\u662f\u5426\u63d0\u4f9b\u57fa\u4e8e\u7528\u6237\u4fdd\u5b58\u53e5\u5b50\u7684\u4e2a\u6027\u5316\u6d4b\u9a8c\uff0c\u800c\u975e\u901a\u7528\u4f8b\u53e5\uff1b4\uff09\u662f\u5426\u4e3a\u6d4f\u89c8\u5668\u63d2\u4ef6\uff08\u5f53\u524d\u4ec5\u9650\u7f51\u9875\u7aef\uff09\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                Zingle\u5207\u4e2d\u4e86\u4e00\u4e2a\u6781\u5176\u7cbe\u51c6\u7684\u75db\u70b9\uff1a\u4f20\u7edf\u8bcd\u6c47\u5b66\u4e60\u5de5\u5177\u8ba9\u5355\u8bcd\u8131\u79bb\u8bed\u5883\uff0c\u5bfc\u81f4\u201c\u5b66\u7528\u5206\u79bb\u201d\u3002\u5b83\u6ca1\u6709\u91cd\u8e48\u201c\u6392\u540d\u3001\u6253\u5361\u201d\u5f0f\u7684\u517b\u6210\u6e38\u620f\u8986\u8f99\uff0c\u800c\u662f\u4ee5\u201c\u4f60\u7684\u5185\u5bb9\u201d\u4e3a\u8d77\u70b9\uff0c\u7528AI\u52a8\u6001\u89e3\u6790\u5355\u8bcd\u5728\u7279\u5b9a\u4e0a\u4e0b\u6587\u4e2d\u7684\u542b\u4e49\uff0c\u518d\u901a\u8fc7SRS\uff08\u95f4\u9694\u91cd\u590d\uff09\u5de9\u56fa\uff0c\u903b\u8f91\u95ed\u73af\u6e05\u6670\u3002\u8fd9\u672c\u8d28\u4e0a\u662f\u5bf9\u201c\u88ab\u52a8\u9605\u8bfb\u201d\u7684\u4e3b\u52a8\u5316\u6539\u9020\u2014\u2014\u628a\u7528\u6237\u6b63\u5728\u8bfb\u7684\u4e1c\u897f\uff0c\u5b9e\u65f6\u8f6c\u5316\u4e3a\u53ef\u590d\u4e60\u7684\u8bcd\u6c47\u8d44\u4ea7\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u4f46\u98ce\u9669\u540c\u6837\u660e\u663e\u3002\u4ea7\u54c1\u76ee\u524d\u662f\u201c\u65e0\u63d2\u4ef6\u201d\u7684\u7eaf\u7f51\u9875\u7aef\uff0c\u610f\u5473\u7740\u7528\u6237\u9700\u8981\u624b\u52a8\u7c98\u8d34\u5185\u5bb9\uff0c\u8fd9\u7834\u574f\u4e86\u201c\u5728\u9605\u8bfb\u4e2d\u5373\u65f6\u6355\u6349\u8bcd\u4e49\u201d\u7684\u6838\u5fc3\u6d41\u7545\u5ea6\u3002\u8bc4\u8bba\u533a\u5bf9\u201c\u539f\u59cb\u8bed\u5883\u662f\u5426\u4fdd\u7559\u201d\u7684\u53cd\u590d\u8ffd\u95ee\uff0c\u4e5f\u66b4\u9732\u4e86\u56e2\u961f\u5c1a\u672a\u5b8c\u5168\u6d88\u9664\u7528\u6237\u5bf9\u201c\u8bcd\u4e49\u5265\u79bb\u201d\u8fd9\u4e00\u8001\u95ee\u9898\u7684\u7591\u8651\u3002\u6b64\u5916\uff0cSRS+AI\u8bcd\u4e49\u89e3\u91ca\u7684\u7ec4\u5408\u5e76\u975e\u72ec\u521b\uff0cAnki\u642d\u914d\u5404\u7c7bAPI\u63d2\u4ef6\u5df2\u80fd\u5b9e\u73b0\u7c7b\u4f3c\u6548\u679c\u3002Zingle\u771f\u6b63\u7684\u62a4\u57ce\u6cb3\uff0c\u4e0d\u5728\u4e8e\u201c\u6709AI\u201d\uff0c\u800c\u5728\u4e8e\u5176\u201c\u4f4e\u64cd\u4f5c\u6210\u672c\u201d\u548c\u201c\u8bed\u5883\u7559\u5b58\u5b8c\u6574\u6027\u201d\u80fd\u5426\u8fbe\u5230\u6781\u81f4\u2014\u2014\u80fd\u5426\u8ba9\u7528\u6237\u4ece\u201c\u7c98\u8d34-\u53d1\u73b0-\u4fdd\u5b58-\u590d\u4e60\u201d\u7684\u94fe\u8def\u4e2d\uff0c\u611f\u53d7\u5230\u6bd4\u624b\u52a8\u5236\u5361\u5feb\u6570\u500d\u7684\u6548\u529b\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u5982\u679c\u56e2\u961f\u65e0\u6cd5\u5728\u65e9\u671f\u901a\u8fc7\u96c6\u6210\u6d4f\u89c8\u5668\u63d2\u4ef6\u3001\u6216\u4f18\u5316\u201c\u5185\u5bb9\u6293\u53d6\u201d\u6d41\u7a0b\u6765\u6d88\u89e3\u6469\u64e6\uff0c\u90a3\u4e48\u5b83\u5f88\u53ef\u80fd\u6ca6\u4e3a\u53c8\u4e00\u4e2a\u201c\u4e3b\u52a8\u7528\u624d\u6709\u7528\u201d\u7684\u6b21\u8981\u5de5\u5177\u3002\u4f46\u82e5\u80fd\u628a\u201c\u9605\u8bfb\u5373\u5b66\u4e60\u201d\u505a\u5230\u6781\u81f4\uff0c\u5b83\u6709\u53ef\u80fd\u6210\u4e3a\u4e13\u6ce8\u8bfb\u5199\u4eba\u7fa4\uff08\u5982\u7559\u5b66\u751f\u3001\u79d1\u6280\u4ece\u4e1a\u8005\uff09\u7684\u9690\u5f62\u5b66\u4e60\u52a9\u624b\uff0c\u800c\u975e\u53c8\u4e00\u4e2a\u8bd5\u56fe\u6559\u80b2\u5927\u4f17\u7684\u201c\u6e05\u51b7\u5e94\u7528\u201d\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">Zingle<\/span>\n                <\/div>\n<div class=\"comment-content\">Learn words where they make sense. Read stories and your own content, understand words in context with AI, and remember them through a connected learning loop.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">Hi Hunters! \ud83d\ude80<br \/>\nI\u2019m Mahan, the founder of Zingle.<\/p>\n<p>I started building this platform because I was personally frustrated with how fragmented and unnatural vocabulary learning has become. Most tools ask you to memorize isolated words, complete random exercises, or keep a streak alive, but they don\u2019t really help you understand how words are used in real life.<br \/>\nInstead of building another \u201cvitamin\u201d something that is nice to have, I wanted to create a \u201cpainkiller\u201d for the core problem: learning new words without context, then forgetting them when it\u2019s time to speak, read, or write.<\/p>\n<p>With Zingle, our obsession is simple:<br \/>\nLearn words in context with AI.<\/p>\n<p>Zingle helps you learn vocabulary from real context, not isolated word lists. Paste content, discover useful words, save them, and review them later with meaning, usage, and context connected.<br \/>\nWe\u2019ve designed the experience to reduce friction as much as possible. The goal is that within a few seconds, users understand the value:<br \/>\n\u201cI can learn vocabulary from content that actually matters to me.\u201d<\/p>\n<p>Why we are here today:<br \/>\nWe\u2019re in the Day Zero phase and looking for our first 100 real users, not just signups. We want people who are genuinely interested in language learning, vocabulary building, and AI-powered study workflows \u2014 people who will help us shape the product before we scale it.<\/p>\n<p>I\u2019ll be here all day to chat and I\u2019m looking for brutally honest feedback:<br \/>\n1. Is the onboarding simple enough?<br \/>\n2. What is the one feature that would make Zingle a must-have for you?<br \/>\n3. Would you use this to improve your English, Dutch, Spanish, or another language?<br \/>\n4. Where does the experience feel confusing, slow, or unnecessary?<\/p>\n<p>Thanks for being part of the journey.<br \/>\nMahan<\/p><\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Learning new vocab in-context is the way to go! i am learning Portuguese and a bit of Turkish &#8211; wondering how well your tool handles these languages (especially Turkish, not that popular)?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">@liza_diagel Thanks a lot, Liza! I completely agree, learning vocab in context feels much more natural than memorizing isolated word lists.<br \/>\nFor Portuguese and Turkish, Zingle can work with real content and generate meanings\/explanations with AI based on the actual context. So the translation is not just a fixed dictionary meaning; it\u2019s created according to how the word is used in that sentence.<br \/>\nThat\u2019s especially useful for languages like Turkish, where word forms and sentence structure can be very different. Zingle keeps the original context sentence, helps explain the word based on that context, and then lets you review it later with SRS.<br \/>\nWe\u2019re still improving language coverage and quality, but I\u2019d love to hear your feedback if you try it with Portuguese or Turkish. Those use cases are very valuable for us.<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>I really like the idea of learning vocabulary through real content instead of memorizing random word lists. That&#8217;s how most people naturally learn and remember new words.<\/p>\n<p>The ability to save words directly from content that interests you sounds especially useful, since it makes learning feel more relevant and personal.<\/p>\n<\/p>\n<p>As someone learning languages, I&#8217;d be much more motivated to use a tool that helps me understand words in context rather than just drilling flashcards.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@gabriella_anjani\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@gabriella_anjani<\/a>&nbsp;Thank you so much. That\u2019s exactly the problem we\u2019re trying to solve with Zingle.<\/p>\n<p>Most learners don\u2019t struggle because they can\u2019t memorize one more word list. They struggle because the word gets separated from the moment where it actually made sense.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>I like that this focuses on understanding words naturally instead of turning language learning into another streak game This idea feels calmer and more useful for long term memory.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@alheri_murya\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@alheri_murya<\/a>&nbsp;Thank you, that means a lot.<\/p>\n<\/p>\n<p>That\u2019s exactly the feeling we wanted Zingle to have. We didn\u2019t want to build another streak-pressure app where the main goal becomes \u201cdon\u2019t break the chain.\u201d<\/p>\n<p>For us, vocabulary learning should feel calmer and more connected to real understanding. If you meet a word inside meaningful content, save it with its context, and review it over time with SRS, it has a much better chance of moving into long-term memory.<\/p>\n<\/p>\n<p>That\u2019s the direction we\u2019re building toward: context first, memory second, pressure last.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This is exactly what I needed, Mahan! As someone who constantly reads global tech platforms and user feedback across multiple languages for <strong>Review2Idea<\/strong>, I always find myself losing the original sentence structure when saving new industry buzzwords. Your private library concept makes total sense.<\/p>\n<p>To answer your 3rd question: I\u2019d absolutely use this to level up my professional English and contextual reading. Quick question on the &#8216;Word Review&#8217; part\u2014does the AI generate personalized quizzes using my actual saved sentences, or does it use generic examples?<\/p>\n<p>Fully supported and upvoted. Excited to see Zingle grow!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@review2idea\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@review2idea<\/a>&nbsp;Thank you so much! Really appreciate the support and the thoughtful use case.<\/p>\n<\/p>\n<p>For Word Review, Zingle uses an SRS review system, similar to Anki. When you save a word, you can review it later with the original context sentence first, so you\u2019re not just memorizing the word in isolation.<\/p>\n<\/p>\n<p>So the current flow is: saved word \u2192 original context sentence \u2192 recall \u2192 answer\/details \u2192 SRS rating. The word details also include definition, sense explanation, examples, synonyms, antonyms, collocations, and pronunciation.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>I\u2019d probably start with Dutch news articles, since I always lose the sentence a saved word came from. The private library part makes sense. Just curious about Word Review: do you still see that original sentence\/context there, or just the saved word and explanation?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@novamaker01\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@novamaker01<\/a>&nbsp;Yes, that\u2019s exactly the problem we\u2019re trying to solve.<\/p>\n<\/p>\n<p>In Word Review, the goal is not to show only the saved word and explanation. You should also keep the original sentence\/context connected to that word, so when you review it later, you remember how it was actually used.<\/p>\n<\/p>\n<p>So with something like Dutch news articles, you can save a word from the article, and later review it with the meaning, explanation, and the sentence\/context it came from. That context is the main difference we care about, because isolated words are easy to forget.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This looks interesting! Is it a browser plugin or if not how does it work?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@saba_k\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@saba_k<\/a>&nbsp;Thanks! It\u2019s not a browser plugin right now.<\/p>\n<\/p>\n<p>Zingle works as a web app: you paste or add content you care about, then Zingle helps you discover useful words inside that context. You can save words, see their meaning and usage, and review them later with the original context connected.<\/p>\n<p>The idea is to make vocabulary learning feel less like memorizing random word lists and more like learning from real content you actually want to understand.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#18<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/QXFWYXLLXJJUPC\" class=\"app-title\">fort<\/a><\/p>\n<div class=\"one-liner\">One command to audit and fix your Mac&#8217;s security<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">102<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>Fort \u662f\u4e00\u6b3e\u65e0\u9700\u5b89\u88c5\u4ee3\u7406\u3001\u65e0\u9700\u6ce8\u518c\u3001\u4e0d\u6536\u96c6\u6570\u636e\u7684 Mac \u5b89\u5168\u5ba1\u8ba1\u4e0e\u4fee\u590d\u5de5\u5177\uff0c\u5f00\u53d1\u8005\u53ea\u9700\u4e00\u6761\u547d\u4ee4\u5373\u53ef\u4e00\u952e\u68c0\u67e5\u5e76\u4fee\u590d 15+ \u9879\u5b89\u5168\u8bbe\u7f6e\uff0c\u89e3\u51b3\u5408\u89c4\u5ba1\u8ba1\u524d\u201c\u624b\u52a8\u6392\u67e5\u7e41\u7410\u4e14\u6613\u9057\u6f0f\u201d\u7684\u6838\u5fc3\u75db\u70b9\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/7affcfcb-9cf4-4172-bfc0-473c0d1d8a79.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/b5cce63c-fc88-4323-89aa-f51b271ca64d.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/f584cd0f-f37b-4870-97f0-37198fae7d03.gif?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/087bf852-4c2c-4b47-b365-7fe0a3776452.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/605edb3e-4a6d-40b8-b8b1-a7cb575279cc.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/fcdc45a4-4d63-4be5-bd31-f1d705db1460.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Mac<\/span><br \/>\n            <span class=\"tag\">Productivity<\/span><br \/>\n            <span class=\"tag\">GitHub<\/span><br \/>\n            <span class=\"tag\">Security<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Mac \u5b89\u5168\u5ba1\u8ba1<\/span><br \/>\n            <span class=\"tag\">\u5b89\u5168\u5408\u89c4<\/span><br \/>\n            <span class=\"tag\">\u4e00\u952e\u4fee\u590d<\/span><br \/>\n            <span class=\"tag\">\u547d\u4ee4\u884c\u5de5\u5177<\/span><br \/>\n            <span class=\"tag\">SOC 2<\/span><br \/>\n            <span class=\"tag\">ISO 27001<\/span><br \/>\n            <span class=\"tag\">\u5f00\u53d1\u5de5\u5177<\/span><br \/>\n            <span class=\"tag\">\u9690\u79c1\u4f18\u5148<\/span><br \/>\n            <span class=\"tag\">\u5f00\u6e90<\/span><br \/>\n            <span class=\"tag\">\u65e0\u4ee3\u7406<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u8ba4\u4e3a\u5de5\u5177\u8f7b\u91cf\u3001\u9690\u79c1\u4fdd\u62a4\u5230\u4f4d\uff0c\u5207\u4e2d\u201c\u8bb0\u4e0d\u4f4f\u5b89\u5168\u8bbe\u7f6e\u68c0\u67e5\u9879\u201d\u7684\u75db\u70b9\u3002\u540c\u65f6\u63d0\u51fa\u7591\u95ee\uff1a\u6d89\u53ca\u7cfb\u7edf\u91cd\u542f\u6216\u9ad8\u6743\u9650\u64cd\u4f5c\u65f6\uff0c\u5982\u4f55\u907f\u514d\u4e34\u65f6\u6253\u65ad\u672c\u5730\u5f00\u53d1\u73af\u5883\uff1f\u671f\u671b\u540e\u7eed\u80fd\u66f4\u4f18\u96c5\u5730\u5904\u7406\u8fd9\u7c7b\u573a\u666f\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                Fort \u7cbe\u51c6\u5207\u5165\u4e86\u4e00\u4e2a\u957f\u671f\u88ab\u5ffd\u89c6\u7684\u7a7a\u767d\uff1aMac \u5b89\u5168\u786c\u5316\u7684\u201c\u6700\u540e\u4e00\u516c\u91cc\u201d\u3002\u5728 MDM \u592a\u91cd\u3001\u624b\u52a8\u68c0\u67e5\u592a\u6563\u3001\u5546\u4e1a\u5de5\u5177\u53c8\u5e26\u8ddf\u8e2a\u4e0e\u540e\u53f0\u8fdb\u7a0b\u7684\u50f5\u5c40\u4e2d\uff0c\u5b83\u7528\u4e00\u4e2a\u4e8c\u8fdb\u5236\u6587\u4ef6+\u4e00\u6761\u547d\u4ee4\u89e3\u51b3\u4e86\u201c\u77e5\u9053\u81ea\u5df1\u9700\u8981\u5b89\u5168\uff0c\u4f46\u4e0d\u77e5\u9053\u4ece\u54ea\u91cc\u67e5\u8d77\u201d\u7684\u6838\u5fc3\u7126\u8651\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u5176\u771f\u6b63\u7684\u4ef7\u503c\u4e0d\u5728\u4e8e\u201c\u68c0\u67e5\u9879\u591a\u201d\uff0815 \u9879\u5e76\u4e0d\u7b97\u591a\uff09\uff0c\u800c\u5728\u4e8e\u201c\u4f4e\u6469\u64e6\u201d\u3002\u65e0\u4ee3\u7406\u3001\u65e0\u6ce8\u518c\u3001MIT \u8bb8\u53ef\u8bc1\uff0c\u5bf9\u4e8e\u72ec\u7acb\u5f00\u53d1\u8005\u548c SOC 2 \u524d\u7684\u5c0f\u56e2\u961f\u800c\u8a00\uff0c\u8fd9\u51e0\u4e4e\u662f\u201c\u6700\u4e0d\u75db\u82e6\u201d\u7684\u5b89\u5168\u5ba1\u8ba1\u4f53\u9a8c\u3002\u5b83\u628a\u5ba1\u8ba1\u4ece\u201c\u4e13\u9898\u9879\u76ee\u201d\u53d8\u6210\u4e86\u201c\u65e5\u5e38\u547d\u4ee4\u201d\uff0c\u964d\u4f4e\u884c\u4e3a\u95e8\u69db\uff0c\u8fd9\u5bf9\u4e8e\u5b89\u5168\u6587\u5316\u7684\u5efa\u7acb\u6bd4\u4efb\u4f55\u62a5\u8868\u90fd\u6709\u610f\u4e49\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u4f46\u9700\u8981\u8b66\u60d5\u7684\u662f\uff1a\u8fd9\u7c7b\u5de5\u5177\u5bb9\u6613\u9677\u5165\u201c\u68c0\u67e5\u6e05\u5355\u6d45\u8868\u5316\u201d\u7684\u9677\u9631\u3002FileVault\u3001SIP \u8fd9\u4e9b\u5f00\u5173\u7684\u786e\u91cd\u8981\uff0c\u4f46\u771f\u6b63\u7684\u5b89\u5168\u98ce\u9669\u5f80\u5f80\u85cf\u5728\u5e94\u7528\u4f9b\u5e94\u94fe\uff08\u5982 Homebrew \u5305\u7684\u7b7e\u540d\u3001XPC \u670d\u52a1\u6743\u9650\uff09\u3001\u7f51\u7edc\u66b4\u9732\u9762\uff08\u5982\u5f00\u53d1\u670d\u52a1\u4e0d\u5c0f\u5fc3\u76d1\u542c 0.0.0.0\uff09\u7b49\u66f4\u9690\u853d\u7684\u5730\u65b9\u3002Fort \u76ee\u524d\u66f4\u50cf\u201c\u5408\u89c4\u4f53\u68c0\u201d\uff0c\u800c\u975e\u201c\u5165\u4fb5\u9632\u5fa1\u201d\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u6b64\u5916\uff0c\u8bc4\u8bba\u4e2d\u5173\u4e8e\u201c\u91cd\u542f\/\u9ad8\u6743\u9650\u53ef\u80fd\u6253\u65ad\u5f00\u53d1\u73af\u5883\u201d\u7684\u8d28\u7591\u5207\u4e2d\u8981\u5bb3\u3002\u73b0\u5b9e\u4e2d\u5f88\u591a\u5f00\u53d1\u8005\u4e0d\u613f\u610f\u6267\u884c\u5b89\u5168\u4fee\u590d\uff0c\u6b63\u662f\u56e0\u4e3a\u201c\u4fee\u590d\u672c\u8eab\u6bd4\u6f0f\u6d1e\u66f4\u9ebb\u70e6\u201d\u3002Fort \u5982\u679c\u80fd\u63d0\u4f9b\u201c\u5ef6\u8fdf\u4fee\u590d\u201d\u3001\u201c\u6307\u5b9a\u7a97\u53e3\u5185\u91cd\u542f\u201d\u6216\u201c\u6700\u5c0f\u5316\u5f71\u54cd\u6a21\u5f0f\u201d\uff0c\u5c06\u771f\u6b63\u4ece\u201c\u68c0\u67e5\u5de5\u5177\u201d\u8fdb\u5316\u4e3a\u201c\u65e5\u5e38\u5b89\u5168\u8fd0\u7ef4\u7ec4\u4ef6\u201d\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u603b\u4f53\u800c\u8a00\uff0cFort \u65b9\u5411\u6b63\u786e\uff0c\u4f46\u6df1\u5ea6\u5c1a\u6d45\u3002\u5b83\u662f\u5b89\u5168\u610f\u8bc6\u7684\u542f\u8499\u8005\uff0c\u800c\u975e\u5b88\u62a4\u8005\u3002\u5bf9\u4e8e\u5e0c\u671b\u5feb\u901f\u901a\u8fc7\u5408\u89c4\u5ba1\u67e5\u7684\u56e2\u961f\uff0c\u5b83\u662f\u4e00\u5242\u201c\u77ed\u6548\u89e3\u836f\u201d\uff1b\u8981\u60f3\u6210\u4e3a\u771f\u6b63\u7684\u9632\u7ebf\uff0c\u8fd8\u9700\u8981\u66f4\u539a\u7684\u4e0a\u4e0b\u6587\u7406\u89e3\u548c\u6301\u7eed\u76d1\u63a7\u80fd\u529b\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">fort<\/span>\n                <\/div>\n<div class=\"comment-content\">Most Mac security tools need agents, signups, or MDM. fort doesn&#8217;t. One command checks 15+ security settings: FileVault, SIP, firewall, screen lock, local admin rights, Gatekeeper, SSH, AirDrop and more. Reports a score and fixes most issues automatically. Single binary. No telemetry. MIT licensed. Perfect for developers hardening their own Mac, and for teams preparing for SOC 2 or ISO 27001 without the MDM overhead. brew install djadmin\/tap\/fort<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Hey PH, Long time \ud83d\udc4b<\/p>\n<p>Every month, before a compliance audit, I found myself asking the same question: <br \/><strong>&#8220;Is my Mac actually configured securely?&#8221;<\/strong><\/p>\n<p>The answer usually meant digging through system settings, running terminal commands I could never remember, and manually collecting evidence.<\/p>\n<p>So I built a small tool called <strong>fort<\/strong>: <a href=\"https:\/\/github.com\/djadmin\/fort\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/github.com\/djadmin\/fort<\/a><\/p>\n<p>fort checks your Mac against common security best practices, helps fix issues with your approval, and generates a report you can use for compliance and audit evidence.<\/p>\n<p>It is designed for founders, developers, consultants, and small teams who want confidence that their devices are secure without the complexity of managing an MDM.<\/p>\n<p>A few things I cared about:<\/p>\n<p>* No accounts or signups<br \/>* No telemetry or tracking<br \/>* No agents running in the background<br \/>* Complete transparency into every check<\/p>\n<p>I built it for myself, but I am sharing it in case it helps others dealing with security reviews, compliance requirements, or simply wanting a more secure Mac.<\/p>\n<p>Would love your feedback and ideas on where to take it next \ud83d\ude4c<\/p>\n<p><a href=\"https:\/\/djadmin.github.io\/fort\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/djadmin.github.io\/fort<\/a><\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>This is cool trying to recall and make sure to check basic security settings is hard to always keep in mind and I feel like this is very relevant today with the high risk with AI agents. I like that you kept this lightweight and private as well avoiding a heavy MDM solution. How do you handle the case where you may need a system reboot or elevated permissions that could temporarily disrupt a local environment?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#19<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/O5HHVRX2ZILQUR\" class=\"app-title\">LayerProof Vellum<\/a><\/p>\n<div class=\"one-liner\">One canvas for every image asset you need<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">102<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>LayerProof Vellum \u662f\u4e00\u4e2a\u9762\u5411\u8425\u9500\u56e2\u961f\u7684\u62d6\u653e\u5f0f\u89c6\u89c9\u753b\u5e03\uff0c\u89e3\u51b3AI\u56fe\u50cf\u751f\u6210\u4e0d\u53ef\u63a7\u3001\u8de8\u5de5\u5177\u534f\u4f5c\u788e\u7247\u5316\u7684\u75db\u70b9\uff0c\u8ba9\u7528\u6237\u50cf\u642d\u5efa\u5de5\u4f5c\u6d41\u4e00\u6837\u5de5\u7a0b\u5316\u5730\u751f\u4ea7\u54c1\u724c\u4e00\u81f4\u7684\u50cf\u7d20\u7ea7\u8d44\u4ea7\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/706c621d-eb9e-45a7-af59-6f9289935bb4.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/d5f11904-aa10-4d13-9691-1f330fe8a3e8.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/a71d9864-9b91-40c6-98b4-b691d102e1b1.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/c874f09f-3b43-42dd-b5a3-e10cc41fa514.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/81fee496-9ddc-424c-b51e-27adad2c797b.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/d73446a4-3db1-4891-b206-31c02cbf9f44.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/e4397378-9e71-4987-af09-1768ad2c936e.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <video class=\"media-content\" poster=\"https:\/\/ph-files.imgix.net\/663b0c4a-e13d-4ff4-adcd-2b97e365635e.jpeg?auto=format\" data-video-url=\"https:\/\/youtu.be\/dJKtJ5GFTOM\"><source src=\"https:\/\/youtu.be\/dJKtJ5GFTOM\" type=\"video\/mp4\"><\/video><\/p>\n<div class=\"video-overlay\">\n<div class=\"play-icon\">\u25b6<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Design Tools<\/span><br \/>\n            <span class=\"tag\">Marketing<\/span><br \/>\n            <span class=\"tag\">Artificial Intelligence<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">\u89c6\u89c9\u753b\u5e03<\/span><br \/>\n            <span class=\"tag\">AI\u56fe\u50cf\u751f\u6210<\/span><br \/>\n            <span class=\"tag\">\u8425\u9500\u5de5\u4f5c\u6d41<\/span><br \/>\n            <span class=\"tag\">\u54c1\u724c\u4e00\u81f4\u6027<\/span><br \/>\n            <span class=\"tag\">\u8282\u70b9\u5f0f\u534f\u4f5c<\/span><br \/>\n            <span class=\"tag\">\u62d6\u653e\u7f16\u8f91<\/span><br \/>\n            <span class=\"tag\">\u81ea\u52a8\u5316\u96c6\u6210<\/span><br \/>\n            <span class=\"tag\">\u591a\u6a21\u578b<\/span><br \/>\n            <span class=\"tag\">\u56e2\u961f\u534f\u4f5c<\/span><br \/>\n            <span class=\"tag\">\u521b\u610f\u8d44\u4ea7\u7ba1\u7406<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u8d5e\u8d4f\u753b\u5e03\u7684\u53ef\u89c6\u5316\u8282\u70b9\u7ec4\u7ec7\uff0c\u4f46\u6838\u5fc3\u5173\u6ce8\u70b9\u5728\u4e8e\uff1a\u5b9e\u65f6\u534f\u4f5c\u662f\u5426\u652f\u6301\uff08\u76ee\u524d\u4ec5\u4e3a\u5f02\u6b65\uff09\uff1b\u753b\u5e03\u590d\u6742\u65f6\u5982\u4f55\u901a\u8fc7\u5206\u7ec4\u3001@\u7ec4\u5f15\u7528\u4fdd\u6301\u6574\u6d01\uff1b\u80fd\u5426\u9501\u5b9a\u4e3b\u4f53\u8282\u70b9\u4ee5\u9632\u80cc\u666f\u53d8\u52a8\u65f6\u53d8\u5f62\uff1b\u80fd\u5426\u65e0\u7f1d\u8c03\u7528\u540c\u5e73\u53f0\u5199\u4f5c\uff08Kraft\uff09\u548c\u6f14\u793a\uff08Chromo\uff09\u7684\u8d44\u4ea7\uff1b\u4ee5\u53ca\u5e95\u5c42\u652f\u6301\u54ea\u4e9b\u5177\u4f53\u751f\u6210\u6a21\u578b\uff08\u63d0\u4f9bGemini\u3001GPT\u3001FLUX\u7b49\u591a\u6837\u9009\u62e9\uff09\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                LayerProof Vellum \u7cbe\u51c6\u51fb\u4e2d\u4e86AI\u89c6\u89c9\u8425\u9500\u9886\u57df\u4e00\u4e2a\u201c\u770b\u8d77\u6765\u5c0f\u4f46\u6781\u5176\u75bc\u75db\u201d\u7684\u69fd\u70b9\uff1a\u5f53\u56e2\u961f\u9700\u8981\u6279\u91cf\u4ea7\u51fa\u54c1\u724c\u4e00\u81f4\u3001\u5c3a\u5bf8\u7cbe\u51c6\u7684\u89c6\u89c9\u8d44\u4ea7\u65f6\uff0c\u4f20\u7edf\u7684\u201c\u5199\u63d0\u793a\u2192\u7948\u7977\u2192\u518dPS\u201d\u6d41\u7a0b\u5c31\u662f\u4e00\u573a\u4f4e\u6548\u7684\u8d4c\u535a\u3002Vellum \u7684\u806a\u660e\u4e4b\u5904\u5728\u4e8e\uff0c\u5b83\u6ca1\u6709\u8bd5\u56fe\u91cd\u65b0\u53d1\u660e\u8f6e\u5b50\uff0c\u800c\u662f\u628a\u56fe\u50cf\u751f\u6210\u5b9a\u4f4d\u4e3a\u201c\u7ba1\u9053\u4e2d\u7684\u4e00\u6b65\u201d\u2014\u2014\u901a\u8fc7\u53ef\u89c6\u5316\u8282\u70b9\u753b\u5e03\uff0c\u628a\u4e3b\u9898\u3001\u80cc\u666f\u3001\u7279\u6548\u50cf\u4e50\u9ad8\u4e00\u6837\u62fc\u63a5\uff0c\u7136\u540e\u4e00\u6b21\u8f93\u51fa\u6210\u54c1\u3002\u8fd9\u672c\u8d28\u4e0a\u662f\u4ece\u201c\u751f\u6210\u827a\u672f\u201d\u5230\u201c\u5de5\u7a0b\u5236\u9020\u201d\u7684\u903b\u8f91\u8dc3\u8fc1\uff0c\u8ba9AI\u4ece\u4e0d\u53ef\u63a7\u7684\u7075\u5149\u4e00\u73b0\uff0c\u964d\u7ea7\u4e3a\u53ef\u590d\u7528\u7684\u751f\u4ea7\u5de5\u5177\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u7136\u800c\uff0c\u4ea7\u54c1\u76ee\u524d\u66b4\u9732\u51fa\u7684\u77ed\u677f\u540c\u6837\u81f4\u547d\u3002\u9996\u5148\uff0c\u534f\u4f5c\u662f\u5f02\u6b65\u800c\u975e\u5b9e\u65f6\uff0c\u8fd9\u5728\u201c\u56e2\u961f\u201d\u5b9a\u4f4d\u4e0b\u51e0\u4e4e\u662f\u786c\u4f24\u2014\u2014\u591a\u8bbe\u8ba1\u5e08\u5e76\u884c\u4fee\u6539\u662f\u73b0\u4ee3\u8425\u9500\u8282\u594f\u7684\u521a\u9700\uff0c\u5f02\u6b65\u66f4\u8be5\u53eb\u201c\u4ea4\u63a5\u201d\u800c\u975e\u201c\u534f\u4f5c\u201d\u3002\u5176\u6b21\uff0c\u7ec4\u7ec7\u80fd\u529b\u505c\u7559\u5728\u624b\u52a8\u5206\u7ec4\u548c@\u5f15\u7528\uff0c\u7f3a\u4e4f\u667a\u80fd\u5e03\u5c40\u6216\u81ea\u52a8\u8282\u70b9\u6298\u53e0\uff0c\u800c\u8425\u9500\u6218\u5f79\u7684\u8d44\u4ea7\u5173\u7cfb\u53ef\u80fd\u591a\u8fbe\u51e0\u5341\u4e2a\u8282\u70b9\uff0c\u4e00\u65e6\u753b\u5e03\u53d8\u810f\uff0c\u7ba1\u7406\u6210\u672c\u53cd\u800c\u8d76\u8d85\u4f20\u7edf\u5de5\u5177\u3002\u6700\u5173\u952e\u7684\u9690\u60a3\u662f\uff1aVellum \u7684\u80fd\u529b\u4e25\u91cd\u4f9d\u8d56\u5e95\u5c42\u591a\u6a21\u578b\u7684\u62fc\u51d1\uff0c\u8fd9\u610f\u5473\u7740\u54c1\u724c\u4e00\u81f4\u6027\u4e0d\u662f\u201c\u67b6\u6784\u5185\u7f6e\u201d\u7684\uff0c\u800c\u662f\u201c\u7528\u6237+AI\u8bd5\u63a2\u201d\u7684\u7ed3\u679c\u2014\u2014\u5982\u679c\u54c1\u724c\u98ce\u683c\u5b57\u5178\u65e0\u6cd5\u6df1\u523b\u5d4c\u5165\u6a21\u578b\u63a8\u65ad\u903b\u8f91\uff0cVellum \u5145\u5176\u91cf\u662f\u4e2a\u597d\u7528\u7684\u201c\u63d0\u793a\u8bcd + \u53c2\u8003\u56fe\u201d\u5305\u88c5\u5668\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u7efc\u5408\u6765\u770b\uff0cVellum \u7684\u9009\u578b\u65b9\u5411\u503c\u5f97\u80af\u5b9a\uff0c\u4f46\u5f53\u524d\u9636\u6bb5\u66f4\u50cf0\u52301\u7684\u6f02\u4eaeDemo\u3002\u5176\u771f\u6b63\u4ef7\u503c\u5fc5\u987b\u5efa\u7acb\u5728\u201c\u5b9e\u65f6\u534f\u4f5c\u201d\u201c\u667a\u80fd\u753b\u5e03\u7ba1\u7406\u201d\u201c\u4e13\u5c5e\u54c1\u724c\u6a21\u578b\u5fae\u8c03\u201d\u4e09\u5927\u652f\u67f1\u4e0a\u3002\u5982\u679cLayerProof\u56e2\u961f\u7ee7\u7eed\u5728\u5782\u76f4\u573a\u666f\u4e2d\u6df1\u8015\uff0cVellum\u6709\u671b\u6210\u4e3a\u8425\u9500\u56e2\u961f\u7684\u201c\u8bbe\u8ba1\u7248Notion\u201d\uff0c\u800c\u975e\u53c8\u4e00\u4e2a\u88ab\u9057\u5fd8\u7684AI\u73a9\u5177\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">LayerProof Vellum<\/span>\n                <\/div>\n<div class=\"comment-content\">Turn unpredictable AI image generations into controlled production pipelines with LayerProof Vellum. Vellum is LayerProof\u2019s drag-and-drop visual canvas for teams who want to engineer their images, not guess them. Plug your subject, background, and effects together on the canvas, and Vellum fuses them into a pixel-perfect final asset.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Welcome to Vellum! <\/p>\n<p>I am the Social Lead at LayerProof and the one who used Vellum the most during our testing phase. Building campaign workflow on a canvas is not new, but it gets so convenient to stay within LayerProof ecosystem &#8211; basically an AI creative suite for marketers. <\/p>\n<p>Whenever we plan a massive, multi-stage campaign, my brain visualizes it as a giant web of connected pieces. Traditional linear documents simply cannot capture how a blog post connects to an email sequence, which then connects to a slide deck.<\/p>\n<p>The infinite node canvas is an absolute game-changer. Vellum allows me to zoom out and see the entire architecture of my campaign mapped out visually, connecting different pieces of text, visuals, and presentations through an intelligent web of nodes.<\/p>\n<p>This is my real working space when I prepared for this launch ;)) <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/5589d1b9-d057-4be2-8caa-7f5659770615.png?auto=compress,format&amp;codec=mozjpeg&amp;cs=strip\" style=\"max-width: 100%\"><\/p>\n<p><\/p>\n<\/p>\n<p>I usually started with a single &#8220;Core Messaging&#8221; node in the center of the canvas. From there, I branched out, commanding Vellum to generate a connected node for social graphics, another for sales decks, and another for ad copy. Seeing the entire campaign generate and visually branch out in front of me was like seeing the matrix. <\/p>\n<p>Would love to hear how others use it. Drop your workflows below!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>6<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The drag-and-drop visual canvas looks really impressive. Since it\u2019s designed for teams, how does collaboration work and can multiple designers edit the same canvas in real time?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@spartan_phuothuynh\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@spartan_phuothuynh<\/a>&nbsp;Great question! Right now, you can absolutely share your canvas with a teammate so they can jump in and pick up right where you left off. It&#8217;s async for now, but full real-time &#8216;multiplayer&#8217; collaboration could be in our next update! Can we get in touch to learn more about your team workflow?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>As a designer, I don&#8217;t just want a pretty image. I want control.<\/p>\n<p>One of my biggest frustrations with AI design tools has always been consistency. You write a prompt, hit generate, and hope the result matches your brand. Sometimes it does. Most of the time, it takes multiple attempts to get there.<\/p>\n<p>What I really wanted was a workspace where the human stays in the driver&#8217;s seat. The AI should act like a designer on the team, helping execute the vision rather than making creative decisions for me.<\/p>\n<p>That&#8217;s one of the reasons I designed LayerProof Vellum.<\/p>\n<p>With Vellum, I can define clear style directions and keep them consistent across every asset. If I tell it our brand uses a &#8220;matte finish, warm orange aesthetic, and minimalist typography,&#8221; it follows those rules. The goal isn&#8217;t just generating images. It&#8217;s helping teams maintain a cohesive visual system from the first asset to the hundredth.<\/p>\n<p>Recently, I was testing how well Vellum understands design intent. I uploaded three completely different references: a 1970s magazine advertisement, a modern 3D render, and a rough sketch. Then I gave it a prompt:<\/p>\n<p>&#8220;Create a modern website hero section using the texture and visual character of the 1970s advertisement, while following the composition and layout structure of the sketch.&#8221;<\/p>\n<p>What impressed me wasn&#8217;t that it blended the references together. It was that it understood what I was actually trying to achieve. It captured the intent behind each reference and translated that into a coherent design direction on the first generation.<\/p>\n<p>Now it&#8217;s your turn.<\/p>\n<p>Drop in a design, product image, or a few references. Set a style rule like &#8220;warm Scandinavian interior photography with natural wood textures, soft daylight, and neutral tones,&#8221; &#8220;playful children&#8217;s book illustration with hand-drawn shapes, bright colors, and simple character expressions,&#8221; or &#8220;minimalist tech startup branding with clean layouts, subtle gradients, and modern sans-serif typography.&#8221;<\/p>\n<p>Let&#8217;s see how accurately Vellum transforms your image while preserving the core structure and intent of the original design!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@tracy03\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@tracy03<\/a>&nbsp;As someone who constantly bugged you for &#8220;just one more quick tweak&#8221; on campaign assets, Vellum locking in those brand styles is a lifesaver for our whole pipeline ;))<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on adding Vellum to the suite! Lgtm, with Kraft handling the writing and Chromo doing presentations, how seamlessly does Vellum integrate? Can I pull a slide I made in Chromo directly onto the Vellum canvas to edit its visual assets?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This looks amazing for massive campaigns, but I can see it getting complex fast. How do you handle organization when a canvas gets huge? Are there groups, folders, or &#8216;sub-canvases&#8217; to keep things clean?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@ngochoang\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@ngochoang<\/a>&nbsp;Yes. You can. After grouping nodes in Vellum, you can also @group to reference all items in the group. I also use this feature to tidy up the canvas then the campaign gets too complex ;))<\/p>\n<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/27acd94e-05f1-4ae4-a204-cbd590737c41.png?auto=compress,format&amp;codec=mozjpeg&amp;cs=strip\" style=\"max-width: 100%\"><\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The node tree structure is brilliant. Is there a way to &#8216;lock&#8217; a subject node so that no matter how much the background or effect nodes recalculate, the core product image remains 100% unaltered?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@trang_do19\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@trang_do19<\/a>&nbsp;You can simply drop the reference image, and prompt AI to use the exact subject without edit. Choosing a Pro model also helps improve visual quality. You can see in the example here: <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/af1a7b2d-a7fd-45ae-bae1-6b3c9d6acda1.png?auto=compress,format&amp;codec=mozjpeg&amp;cs=strip\" style=\"max-width: 100%\"><\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Hey Product Hunt, Jordyn here \ud83d\ude4b\u200d\u2640\ufe0f<br \/>When I joined Layerproof, I asked our team one question: why does turning a campaign idea into a finished visual asset mean hopping between a word processor, a design tool and a slide maker?<\/p>\n<p>That question became my guiding light for Vellum. We need a unified canvas for ideas and visuals to actually live together. The versatility is the coolest part. One day, I&#8217;m drafting sharp social copy. The next, I&#8217;m generating stunning, visually rich one-pagers and slide decks for the team. Seriously, it felt like a breath of fresh air.<\/p>\n<p>We actually used Vellum to build our entire internal go-to-market deck for this PH launch \ud83d\ude2c From the first spark of an idea to polished slides, all in about 10 mins, wild!<\/p>\n<p>Here&#8217;s a fun challenge if you want to give it a whirl: Pick a feature you&#8217;re launching soon. Add your brand guidelines as one node, and some initial thoughts as another. Then ask Vellum to create both the text announcement and a visual for LinkedIn. I;m genuinely curios to see how the visual output aligns with your brand vision. Let me know what you think!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@creativewjordyn\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@creativewjordyn<\/a>&nbsp;<br \/>Building decks on Vellum is such a creative idea!! I also noticed that the AI agent is very good at setting up workflows. I did try to dump my campaign notes and it helps stucture into different nodes and draw connections between them. Super helpful!<\/p>\n<p><\/p>\n<p><img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/66968910-ef5e-49ac-acb8-a6b61293e027.png?auto=compress,format&amp;codec=mozjpeg&amp;cs=strip\" style=\"max-width: 100%\"><img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/a8223857-0ab8-489f-82d0-d4d8cf23adb7.png?auto=compress,format&amp;codec=mozjpeg&amp;cs=strip\" style=\"max-width: 100%\"><\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The <a href=\"http:\/\/Make.com\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Make.com<\/a> integration caught my eye. Most visual tools are standalone so you have to break your workflow to use them. Building it so visuals just come out the end of an automation you already have running is a much cleaner approach. Rooting for this one.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Controlling AI generations instead of guessing is the dream right now. What base image models are powering the generations under the hood?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@quynh_le5\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@quynh_le5<\/a>&nbsp;We don&#8217;t limit in one base image model but offer a range of models for you to choose. The list includes: Gemini, GPT, FLUX, Seedream, Ideogram, Stable Diffusion, Z-Image<br \/>Pick your fav model when you generate!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#20<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/KDJON65FUSS24Y\" class=\"app-title\">FluidDocs Deck Builder<\/a><\/p>\n<div class=\"one-liner\">Turn a prompt into a real HTML deck<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">96<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>FluidDocs Deck Builder \u901a\u8fc7\u4e00\u53e5\u63d0\u793a\u8bcd\uff0c\u5c06\u7528\u6237\u4ece\u7e41\u7410\u7684PPT\u6392\u7248\u4e2d\u89e3\u653e\u51fa\u6765\uff0c\u76f4\u63a5\u751f\u6210\u53ef\u5728\u7ebf\u7f16\u8f91\u3001\u81ea\u7531\u4e0b\u8f7d\u7684HTML\u7f51\u9875\u6f14\u793a\u6587\u7a3f\uff0c\u89e3\u51b3\u4e86\u4f20\u7edfAI\u5de5\u5177\u751f\u6210\u9759\u6001PDF\u6216\u6587\u6863\u5f0f\u5e7b\u706f\u7247\u7684\u7ed3\u6784\u50f5\u5316\u95ee\u9898\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <video class=\"media-content\" poster=\"https:\/\/ph-files.imgix.net\/96401e3f-5f03-45cb-b16a-ae38806e04d0.jpeg?auto=format\" data-video-url=\"https:\/\/youtu.be\/G_vC2LgM-_Y\"><source src=\"https:\/\/youtu.be\/G_vC2LgM-_Y\" type=\"video\/mp4\"><\/video><\/p>\n<div class=\"video-overlay\">\n<div class=\"play-icon\">\u25b6<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/48cdfbcd-ede6-4d3c-80ff-10f4548cdee9.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/6047bd92-12d5-4704-9d18-e23072733171.gif?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/e4e55ce4-8a35-409d-8bec-eb773840d131.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/ef868701-eeb6-4ba9-8e44-4f9d13d13414.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/7038ae20-de0b-4621-8b84-b856cc158250.gif?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/3d8c48ff-5df4-40c7-8649-987a8a2a5bdb.gif?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/6ed73087-cb29-4f57-b940-f60d42d42884.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Design Tools<\/span><br \/>\n            <span class=\"tag\">Productivity<\/span><br \/>\n            <span class=\"tag\">Open Source<\/span><br \/>\n            <span class=\"tag\">GitHub<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">AI\u6f14\u793a\u5de5\u5177<\/span><br \/>\n            <span class=\"tag\">HTML\u5e7b\u706f\u7247<\/span><br \/>\n            <span class=\"tag\">\u5f00\u6e90\u5de5\u5177<\/span><br \/>\n            <span class=\"tag\">\u7f51\u9875\u7f16\u8f91\u5668<\/span><br \/>\n            <span class=\"tag\">PPT\u8f6c\u6362<\/span><br \/>\n            <span class=\"tag\">AI Deck\u751f\u6210<\/span><br \/>\n            <span class=\"tag\">\u5185\u5bb9\u7ed3\u6784\u5316<\/span><br \/>\n            <span class=\"tag\">\u65e0\u8d26\u53f7\u4f7f\u7528<\/span><br \/>\n            <span class=\"tag\">MCP\u670d\u52a1\u5668<\/span><br \/>\n            <span class=\"tag\">\u6295\u8d44\u8005\u8def\u6f14<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u666e\u904d\u8ba4\u53ef\u5176\u201c\u4e00\u53e5\u8bdd\u751f\u6210\u53ef\u7f16\u8f91HTML\u201d\u7684\u521b\u65b0\u6027\uff0c\u5c24\u5176\u8d5e\u8d4f\u5bf9\u6295\u8d44\u8005\u8def\u6f14\u7b49\u573a\u666f\u7684\u63d0\u5347\u3002\u6838\u5fc3\u53cd\u9988\u96c6\u4e2d\u4e8e\uff1a\u590d\u6742\u5e03\u5c40\uff08\u5982\u591a\u5217\u3001\u56fe\u8868\uff09\u7684\u5bfc\u5165\u4fdd\u7559\u6548\u679c\uff0c\u4ee5\u53ca\u662f\u5426\u63d0\u4f9b\u6258\u7ba1\u7248\u672c\u3002\u5f00\u53d1\u8005\u79ef\u6781\u56de\u5e94\uff0c\u627f\u8ba4\u56fe\u8868\u76ee\u524d\u4e3a\u622a\u56fe\u8fd8\u539f\uff0c\u975e\u52a8\u6001\u7f16\u8f91\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                FluidDocs Deck Builder \u7684\u806a\u660e\u4e4b\u5904\uff0c\u5728\u4e8e\u5b83\u6ca1\u6709\u6389\u8fdb\u201c\u7528AI\u751f\u6210PPT\u201d\u7684\u9677\u9631\u3002\u5927\u591a\u6570AI\u6f14\u793a\u5de5\u5177\u90fd\u5728\u505a\u540c\u4e00\u4ef6\u4e8b\uff1a\u628a\u6587\u5b57\u5207\u6210\u5e7b\u706f\u7247\uff0c\u7ed3\u679c\u8f93\u51fa\u7684\u662f\u201c\u50cf\u6587\u6863\u7684PPT\u201d\u2014\u2014\u7f8e\u5219\u7f8e\u77e3\uff0c\u4f46\u4e27\u5931\u4e86\u5927\u7eb2\u903b\u8f91\u4e0e\u89c6\u89c9\u8282\u594f\u3002\u800cDeck Builder\u9009\u62e9\u5c06\u6700\u7ec8\u5f62\u6001\u5b9a\u4e3aHTML\uff0c\u8fd9\u672c\u8d28\u4e0a\u662f\u4e00\u6b21\u201c\u683c\u5f0f\u6c11\u4e3b\u5316\u201d\u7684\u5c1d\u8bd5\uff1a\u7528\u6237\u4e0d\u518d\u88abPowerPoint\u6216Keynote\u7684\u6a21\u677f\u548c\u9875\u9762\u754c\u9650\u675f\u7f1a\uff0c\u53ef\u4ee5\u50cf\u7f16\u8f91\u7f51\u9875\u4e00\u6837\u81ea\u7531\u91cd\u6784\u5185\u5bb9\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u4ece\u8bc4\u8bba\u533a\u770b\uff0c\u5176\u6838\u5fc3\u4ef7\u503c\u5e76\u4e0d\u4ec5\u662f\u201c\u751f\u6210\u201d\uff0c\u800c\u662f\u201c\u7f16\u8f91\u201d\u4e0e\u201c\u79fb\u690d\u201d\u3002\u652f\u6301\u5bfc\u5165PDF\/PPT\u5e76\u4fdd\u7559\u622a\u56fe\uff0c\u89e3\u51b3\u4e86\u5b58\u91cf\u8d44\u6e90\u7684\u75db\u70b9\uff1b\u5f00\u6e90MIT\u534f\u8bae\u52a0\u4e0a\u672c\u5730\u5316\u8fd0\u884c\uff0c\u6d88\u9664\u4e86\u5bf9\u5e73\u53f0\u9501\u5b9a\u7684\u6050\u60e7\u3002\u7136\u800c\uff0c\u8fd9\u4e5f\u66b4\u9732\u4e86\u5b83\u7684\u5929\u82b1\u677f\uff1a\u5bf9\u591a\u5217\u3001\u56fe\u8868\u7b49\u590d\u6742\u6392\u7248\u7684\u8fd8\u539f\u76ee\u524d\u53ea\u80fd\u505a\u5230\u201c\u50cf\u7d20\u7ea7\u5feb\u7167\u201d\uff0c\u800c\u975e\u7ed3\u6784\u5316\u91cd\u5efa\u3002\u8fd9\u610f\u5473\u7740\u5b83\u66f4\u9002\u5408\u5185\u5bb9\u4e3a\u4e3b\u3001\u8bbe\u8ba1\u4e3a\u8f85\u7684\u6f14\u793a\uff08\u5982\u4ea7\u54c1\u4ecb\u7ecd\u3001\u5185\u90e8\u62a5\u544a\uff09\uff0c\u800c\u975e\u8ffd\u6c42\u6781\u81f4\u753b\u9762\u611f\u7684\u521b\u610f\u63d0\u6848\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u53e6\u4e00\u4e2a\u503c\u5f97\u5173\u6ce8\u7684\u70b9\u662f\uff0c\u4ea7\u54c1\u5b9a\u4f4d\u7565\u663e\u201c\u4e24\u5934\u4e0d\u9760\u201d\u3002\u5bf9\u666e\u901a\u7528\u6237\u800c\u8a00\uff0cHTML\u7f16\u8f91\u7684\u95e8\u69db\u4f9d\u7136\u9ad8\u4e8e\u62d6\u62c9\u62fd\u7684PPT\uff1b\u800c\u5bf9\u5f00\u53d1\u8005\u7fa4\u4f53\u800c\u8a00\uff0c\u76f4\u63a5\u7528Claude Code\u6216MCP\u670d\u52a1\u5668\u7ec4\u88c5\u4e00\u5957\u66f4\u70ab\u7684\u6f14\u793a\u6846\u67b6\u4e5f\u975e\u96be\u4e8b\u3002\u771f\u6b63\u80fd\u6253\u52a8\u5e02\u573a\u7684\uff0c\u6216\u8bb8\u662f\u5b83\u4f5c\u4e3a\u201c\u8f7b\u91cf\u7ea7\u6f14\u793a\u5373\u7f51\u9875\u201d\u7684\u7406\u5ff5\uff0c\u5728API\u6587\u6863\u3001\u4ea7\u54c1\u4e0a\u7ebf\u6f14\u793a\u3001\u5f00\u6e90\u9879\u76ee\u8bf4\u660e\u7b49\u573a\u666f\u4e2d\u7206\u53d1\u6f5c\u529b\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u4e00\u53e5\u8bdd\u603b\u7ed3\uff1a\u5b83\u4e0d\u662fPPT\u7684\u7ec8\u7ed3\u8005\uff0c\u800c\u662f\u201c\u6f14\u793a\u6587\u7a3f\u201d\u8fd9\u4ef6\u4e8b\u5728\u7f51\u9875\u65f6\u4ee3\u7684\u5f62\u6001\u63a2\u7d22\u2014\u2014\u4f46\u522b\u6307\u671b\u5b83\u66ff\u4f60\u5b8c\u6210\u8bbe\u8ba1\u5e08\u7684\u5de5\u4f5c\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">FluidDocs Deck Builder<\/span>\n                <\/div>\n<div class=\"comment-content\">Deck Builder turns one sentence into a real, editable HTML deck: a single web page you change right in the browser (press E) and download as your own file. The difference from other AI deck tools: it is not a static PDF, not a doc chopped into slides, and not locked in an app. Already have a deck? Drop in a PDF or PowerPoint, and it rebuilds that as editable HTML too. Free and open source.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">Hey Product Hunt, I&#8217;m Nishant, one of the makers.<\/p>\n<p>For months, I asked AI tools to create a deck for me, but I got back something that read like a document chopped into slides: right words, wrong structure. So we built Deck Builder to make a real one.<\/p>\n<p>You describe the deck in a sentence and get back a real, editable HTML deck: pitch, sales, launch, keynote, or all-hands. It is a single web page you edit right in the browser (press E, click anything, type) and download as your own file. No account, nothing to install to try it.<\/p>\n<p>Already have a deck? Drop in a PDF or PowerPoint, and it rebuilds a clean, editable version, charts and screenshots intact.<\/p>\n<p>It is free and open source (MIT), and it plugs into the AI tools a lot of you already use (Claude Code, Codex, Gemini CLI).<\/p>\n<p>Click and edit a live one here, no signup: <a href=\"https:\/\/share.fluiddocs.ai\/db-quickstart\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/share.fluiddocs.ai\/db-qu&#8230;<\/a><br \/>\nRepo: github.com\/FluidForm-ai\/fluiddocs-deck-builder<\/p>\n<p>One thing for Product Hunt today: send me a deck you are stuck on, and I will rebuild it into an editable web version with you, free. Just reply or DM.<\/p>\n<p>I would love your feedback, especially on which deck type to add next and where it falls short. Reply and tell me what breaks.<\/p><\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the launch! Turning a single sentence into an editable HTML deck is such a clean, flexible approach compared to static PDFs.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@marianna_tymchuk\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@marianna_tymchuk<\/a>&nbsp;thank you, that means a lot coming from someone at Stripo. You are doing this for email, turning painful hand-coded HTML into something editable and reusable, so the living-document idea is right in your wheelhouse (those reusable content modules are something I keep eyeing for decks). One thing I am genuinely curious about: now that AI writes more of the email, do your users still want to drop into the HTML themselves, or has that mostly faded?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Now I won&#8217;t have to blush in front of my boss because of a messy presentation!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@lilamoreau\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@lilamoreau<\/a>&nbsp;Ha, the slide that picks the worst possible moment to betray you, right as the boss leans in. We have all been there. Glad those days are behind you.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Love it!! Been using Fluiddocs for all my investor decks &amp; slides and my conversations are much richer! <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@shivam_goyal10\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@shivam_goyal10<\/a>&nbsp;Thanks, Shivam, this means a lot. Investor decks are about the highest-stakes thing you can put a tool on, so hearing the conversations got richer (not just that the deck looked nicer) is exactly the bar we were aiming for. <\/p>\n<\/p>\n<p>A core component of the same engine is what today&#8217;s launch opens up; the deck builder is now open source, so anyone can start from one prompt and get a real, editable deck. Grateful you have been putting it to work where it counts.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>I love the MCP server and how easy it is to get a website\/doc published on a domain. Kudos to Nishant for the launch! We use fluiddocs already haha, mainly during our angel round we figured that the best part is angels using fluiddocs to get a summary and relevant questions without nudging us. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@hiteshjoshi\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@hiteshjoshi<\/a>&nbsp;thanks. Getting a doc published on a domain that is exactly what we wanted the MCP server plus hosting to feel like, so good to hear it holds up in real use. <\/p>\n<p>Today&#8217;s launch is the open-source deck builder, the same one-prompt-to-real-output idea, and it plugs right into that same publish flow. Glad to have you on this one.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Looks great, will give it a try. Will you also provide a hosted version?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@philip_lr\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@philip_lr<\/a>&nbsp;Thank you. Two things worth saying out loud for anyone reading: the deck builder is completely open source (MIT), runs standalone with no account, and the output is one self-contained HTML file. And yes, hosting is available via FluidDocs at <a href=\"http:\/\/fluiddocs.ai\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">fluiddocs.ai<\/a> if you want a shareable link, fully optional, free to start.<\/p>\n<p>So you can run the whole thing yourself and never touch our hosting, or lean on it when you want a link instead of a file.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Curious how well it preserves complex layouts like multi-column slides, embedded media, or charts when converting existing decks.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@starkturtle\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@starkturtle<\/a>&nbsp;great question, and honestly, the part I cared most about getting right. deck-import pulls the text, along with the original screenshot of each slide, and then rebuilds it as editable HTML. So charts and embedded media come back pixel-accurate, because it keeps the original image of that slide, while the text and structure around them become editable. Multi-column slides get classified and rebuilt rather than flattened. The honest tradeoff: a chart comes back as the original image, so it looks right, but it is not a live, re-editable chart yet. If you have a deck you can share, drop a link here, and I will convert it and post the result so you can see exactly how it holds up. If it is not shareable, DM me, and I will run it privately.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<\/div>\n<p><!-- \u56fe\u7247\u653e\u5927\u6a21\u6001\u6846 --><\/p>\n<div id=\"imageModal\" class=\"modal\">\n    <span class=\"close\">&times;<\/span><br \/>\n    <img class=\"modal-content\" id=\"modalImage\">\n<\/div>\n<p><script>\n    \/\/ \u83b7\u53d6\u6a21\u6001\u6846\u5143\u7d20\n    const modal = document.getElementById(\"imageModal\");\n    const modalImg = document.getElementById(\"modalImage\");\n    const closeBtn = document.getElementsByClassName(\"close\")[0];<\/p>\n<p>    \/\/ \u68c0\u6d4b\u662f\u5426\u4e3a\u79fb\u52a8\u8bbe\u5907\n    const isMobile = \/iPhone|iPad|iPod|Android\/i.test(navigator.userAgent);<\/p>\n<p>    \/\/ \u4e3a\u79fb\u52a8\u8bbe\u5907\u6dfb\u52a0\u89e6\u6478\u4f18\u5316\n    function addTouchOptimization() {\n        if (isMobile) {\n            \/\/ \u4e3a\u6240\u6709\u53ef\u70b9\u51fb\u5143\u7d20\u6dfb\u52a0\u89e6\u6478\u53cd\u9988\n            const clickableElements = document.querySelectorAll(\n                '.media-content, .close, .video-overlay, .play-icon'\n            );<\/p>\n<p>            clickableElements.forEach(el => {\n                el.style.touchAction = 'manipulation'; \/\/ \u9632\u6b62\u53cc\u51fb\u7f29\u653e\n            });\n        }\n    }<\/p>\n<p>    \/\/ \u4e3a\u6240\u6709\u56fe\u7247\u6dfb\u52a0\u70b9\u51fb\u4e8b\u4ef6\n    const images = document.querySelectorAll(\"img.media-content\");\n    images.forEach(img => {\n        img.onclick = function() {\n            modal.style.display = \"block\";\n            modalImg.src = this.src;\n            \/\/ \u963b\u6b62\u80cc\u666f\u6eda\u52a8\n            document.body.style.overflow = \"hidden\";\n        }<\/p>\n<p>        \/\/ \u4e3a\u79fb\u52a8\u8bbe\u5907\u6dfb\u52a0\u89e6\u6478\u4e8b\u4ef6\u652f\u6301\n        if (isMobile) {\n            img.addEventListener('touchstart', function(e) {\n                \/\/ \u9632\u6b62\u89e6\u6478\u4e8b\u4ef6\u89e6\u53d1\u4e0d\u5fc5\u8981\u7684\u884c\u4e3a\n                e.preventDefault();\n                this.click();\n            }, { passive: false });\n        }\n    });<\/p>\n<p>    \/\/ \u4e3a\u89c6\u9891\u6dfb\u52a0\u70b9\u51fb\u4e8b\u4ef6 - \u8df3\u8f6c\u5230\u89c6\u9891URL\n    const videos = document.querySelectorAll(\"video.media-content\");\n    videos.forEach(video => {\n        \/\/ \u70b9\u51fb\u89c6\u9891\u672c\u8eab\u65f6\u8df3\u8f6c\u5230\u89c6\u9891URL\n        video.onclick = function(e) {\n            \/\/ \u68c0\u67e5\u70b9\u51fb\u76ee\u6807\u662f\u5426\u662f\u89c6\u9891\u63a7\u4ef6\u6216\u5176\u5b50\u5143\u7d20\n            let isControlClick = false;\n            let target = e.target;<\/p>\n<p>            \/\/ \u5411\u4e0a\u904d\u5386DOM\uff0c\u68c0\u67e5\u662f\u5426\u70b9\u51fb\u4e86\u63a7\u4ef6\u5143\u7d20\n            while (target && target !== this) {\n                \/\/ \u68c0\u67e5\u662f\u5426\u6709\u63a7\u4ef6\u76f8\u5173\u7684\u7c7b\u540d\u6216\u5c5e\u6027\n                if (target.classList.contains('video-js') || \n                    target.tagName.toLowerCase() === 'button' || \n                    target.tagName.toLowerCase() === 'input' || \n                    target.tagName.toLowerCase() === 'select' ||\n                    target.className.includes('control')) {\n                    isControlClick = true;\n                    break;\n                }\n                target = target.parentElement;\n            }<\/p>\n<p>            \/\/ \u53ea\u6709\u5f53\u70b9\u51fb\u7684\u662f\u89c6\u9891\u672c\u8eab\u800c\u975e\u63a7\u4ef6\u65f6\u624d\u8df3\u8f6c\n            if (!isControlClick && e.target.tagName.toLowerCase() === 'video') {\n                const videoUrl = this.getAttribute('data-video-url') || this.querySelector('source').src;\n                window.open(videoUrl, '_blank');\n            }\n        }<\/p>\n<p>        \/\/ \u4e3a\u79fb\u52a8\u8bbe\u5907\u6dfb\u52a0\u89e6\u6478\u4e8b\u4ef6\u652f\u6301\n        if (isMobile) {\n            video.addEventListener('touchstart', function(e) {\n                \/\/ \u68c0\u67e5\u662f\u5426\u70b9\u51fb\u4e86\u63a7\u4ef6\n                let isControlClick = false;\n                let target = e.target;<\/p>\n<p>                while (target && target !== this) {\n                    if (target.tagName.toLowerCase() === 'button' || \n                        target.tagName.toLowerCase() === 'input' || \n                        target.className.includes('control')) {\n                        isControlClick = true;\n                        break;\n                    }\n                    target = target.parentElement;\n                }<\/p>\n<p>                if (!isControlClick) {\n                    e.preventDefault();\n                    const videoUrl = this.getAttribute('data-video-url') || this.querySelector('source').src;\n                    window.open(videoUrl, '_blank');\n                }\n            }, { passive: false });\n        }\n    });<\/p>\n<p>    \/\/ \u4e3a\u89c6\u9891\u906e\u7f69\u6dfb\u52a0\u70b9\u51fb\u4e8b\u4ef6\uff0c\u786e\u4fdd\u70b9\u51fb\u906e\u7f69\u4e5f\u80fd\u8df3\u8f6c\n    const videoOverlays = document.querySelectorAll('.video-overlay');\n    videoOverlays.forEach(overlay => {\n        overlay.onclick = function(e) {\n            \/\/ \u963b\u6b62\u4e8b\u4ef6\u5192\u6ce1\u5230\u89c6\u9891\u5143\u7d20\n            e.stopPropagation();\n            const video = this.parentElement.querySelector('video.media-content');\n            if (video) {\n                const videoUrl = video.getAttribute('data-video-url') || video.querySelector('source').src;\n                window.open(videoUrl, '_blank');\n            }\n        }<\/p>\n<p>        \/\/ \u4e3a\u79fb\u52a8\u8bbe\u5907\u6dfb\u52a0\u89e6\u6478\u4e8b\u4ef6\u652f\u6301\n        if (isMobile) {\n            overlay.addEventListener('touchstart', function(e) {\n                e.preventDefault();\n                e.stopPropagation();\n                const video = this.parentElement.querySelector('video.media-content');\n                if (video) {\n                    const videoUrl = video.getAttribute('data-video-url') || video.querySelector('source').src;\n                    window.open(videoUrl, '_blank');\n                }\n            }, { passive: false });\n        }\n    });<\/p>\n<p>    \/\/ \u5173\u95ed\u6a21\u6001\u6846\n    closeBtn.onclick = function() {\n        modal.style.display = \"none\";\n        \/\/ \u6062\u590d\u80cc\u666f\u6eda\u52a8\n        document.body.style.overflow = \"auto\";\n    }<\/p>\n<p>    \/\/ \u4e3a\u79fb\u52a8\u8bbe\u5907\u6dfb\u52a0\u89e6\u6478\u4e8b\u4ef6\u652f\u6301\n    if (isMobile) {\n        closeBtn.addEventListener('touchstart', function(e) {\n            e.preventDefault();\n            modal.style.display = \"none\";\n            document.body.style.overflow = \"auto\";\n        }, { passive: false });\n    }<\/p>\n<p>    \/\/ \u70b9\u51fb\u6a21\u6001\u6846\u5916\u90e8\u5173\u95ed\n    window.onclick = function(event) {\n        if (event.target === modal) {\n            modal.style.display = \"none\";\n            document.body.style.overflow = \"auto\";\n        }\n    }<\/p>\n<p>    \/\/ \u4e3a\u79fb\u52a8\u8bbe\u5907\u6dfb\u52a0\u89e6\u6478\u4e8b\u4ef6\u652f\u6301\n    if (isMobile) {\n        modal.addEventListener('touchstart', function(e) {\n            if (e.target === modal) {\n                modal.style.display = \"none\";\n                document.body.style.overflow = \"auto\";\n            }\n        }, { passive: true });\n    }<\/p>\n<p>    \/\/ \u6309ESC\u952e\u5173\u95ed\u6a21\u6001\u6846\n    document.addEventListener('keydown', function(event) {\n        if (event.key === 'Escape' && modal.style.display === 'block') {\n            modal.style.display = 'none';\n            document.body.style.overflow = \"auto\";\n        }\n    });<\/p>\n<p>    \/\/ \u68c0\u67e5\u6bcf\u4e2a\u5a92\u4f53\u753b\u5eca\u4e2d\u662f\u5426\u53ea\u6709\u4e00\u4e2a\u9879\u76ee\uff0c\u5982\u679c\u662f\uff0c\u6dfb\u52a0single-item\u7c7b\n    document.querySelectorAll('.media-gallery').forEach(gallery => {\n        if (gallery.querySelectorAll('.media-item-wrapper').length === 1) {\n            gallery.classList.add('single-item');\n        }\n    });<\/p>\n<p>    \/\/ \u521d\u59cb\u5316\u89e6\u6478\u4f18\u5316\n    addTouchOptimization();<\/p>\n<p>    \/\/ \u7a97\u53e3\u5927\u5c0f\u53d8\u5316\u65f6\u91cd\u65b0\u68c0\u67e5\u753b\u5eca\u72b6\u6001\n    window.addEventListener('resize', function() {\n        document.querySelectorAll('.media-gallery').forEach(gallery => {\n            if (gallery.querySelectorAll('.media-item-wrapper').length === 1) {\n                gallery.classList.add('single-item');\n            } else {\n                gallery.classList.remove('single-item');\n            }\n        });\n    });<\/p>\n<p>    \/\/ --- \u8bc4\u8bba\u533a\u57df\u6298\u53e0\/\u5c55\u5f00\u529f\u80fd ---\n    const commentToggles = document.querySelectorAll('.comments-toggle');<\/p>\n<p>    commentToggles.forEach(toggle => {\n        toggle.addEventListener('click', function() {\n            \/\/ \u5207\u6362\u5f53\u524dtoggle\u7684open\u72b6\u6001\n            this.classList.toggle('open');<\/p>\n<p>            \/\/ \u83b7\u53d6\u5bf9\u5e94\u7684\u8bc4\u8bba\u5bb9\u5668\n            const commentsContainer = this.nextElementSibling;\n            if (commentsContainer && commentsContainer.classList.contains('comments-container')) {\n                commentsContainer.classList.toggle('open');\n            }\n        });\n    });\n<\/script><\/p>\n<p><\/body><br \/>\n<\/html><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Product Hunt \u6bcf\u65e5\u70ed\u699c 2026-06-10 PH\u70ed\u699c | 2026-06-10 #1 Publo [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"template-clean-canvas.php","format":"standard","meta":{"footnotes":""},"categories":[2],"tags":[],"class_list":["post-248","post","type-post","status-publish","format-standard","hentry","category-producthunt"],"_links":{"self":[{"href":"https:\/\/ph.listeningo.cn\/index.php\/wp-json\/wp\/v2\/posts\/248","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ph.listeningo.cn\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ph.listeningo.cn\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ph.listeningo.cn\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ph.listeningo.cn\/index.php\/wp-json\/wp\/v2\/comments?post=248"}],"version-history":[{"count":0,"href":"https:\/\/ph.listeningo.cn\/index.php\/wp-json\/wp\/v2\/posts\/248\/revisions"}],"wp:attachment":[{"href":"https:\/\/ph.listeningo.cn\/index.php\/wp-json\/wp\/v2\/media?parent=248"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ph.listeningo.cn\/index.php\/wp-json\/wp\/v2\/categories?post=248"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ph.listeningo.cn\/index.php\/wp-json\/wp\/v2\/tags?post=248"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}